多行shell脚本如何执行?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多行shell脚本如何执行?相关的知识,希望对你有一定的参考价值。
shell脚本的执行可以是输入一行执行一行,如:
bash-3.2$ echo hello world
hello world
也可以是直接运行编辑好的脚本文件,如:
bash-3.2$ cat > helloworld
echo hello world
bash-3.2$
bash-3.2$ chmod +x helloworld
bash-3.2$
bash-3.2$ helloworld
hello world
不过现在我不想单行执行,也不想运行文件脚本,想运行一个多行的shell脚本,怎么办?如下面的几行:
bash-3.2$ abc=1
bash-3.2$
bash-3.2$ if $abc
> echo $abc
>
是不是在最后一行要加点什么特殊字符?
哪位高人知道,帮忙解答一下。
shell执行的是命令,是语句,如果不用脚本,只能一个语句一个语句地执行。
当然,一个语句可以分多行写。对于多行的情况,只要将语句输入完整了,语法正确了,shell自然会知道你的输入已经结束,就会开始执行,不需要任何特殊字符。
例如:
bash-3.2$ abc=1
bash-3.2$
bash-3.2$ if [ $abc -eq 1 ]; then
> echo $abc
> fi
这个if语句,以if开头,fi结束,最后回车后,shell就开始执行了,并打印出结果1。
if 需要用到判断表达式,注意语法。 参考技术A php 配置文件中safe_mode关闭,然后用php的函数调用就行 exec("shell命令")
下面是一个简单的例子,输出当前用户
echo exec('whoami');
追问
这位兄弟所答非所问,我就是想多行执行shell,单行执行和脚本执行我都会做。
继续求解。。。
if [ $abc -eq 1 ]; then echo $abc; fi 参考技术C 加&,后台执行。
以上是关于多行shell脚本如何执行?的主要内容,如果未能解决你的问题,请参考以下文章
shell脚本编程小技巧——如何解决多行重定,变量不被shell解释