Bri*_*ian 2 bash shell scripting
我正在维护一个现有的shell脚本,它将命令分配给shell脚本中的变量,如:
MY_COMMAND="/bin/command -dosomething"
Run Code Online (Sandbox Code Playgroud)
然后通过执行以下操作,它将"参数"传递给$ MY_COMMAND:
MY_ARGUMENT="fubar"
$MY_COMMAND $MY_ARGUMENT
Run Code Online (Sandbox Code Playgroud)
这个想法$MY_COMMAND应该与$MY_ARGUMENT附加执行.
现在,我不是shell脚本的专家,但从我所知道的,$MY_COMMAND不$MY_ARGUMENT作为参数执行.但是,如果我这样做:
MY_ARGUMENT="itworks"
MY_COMMAND="/bin/command -dosomething $MY_ARGUMENT"
Run Code Online (Sandbox Code Playgroud)
它工作得很好.
它是否是有效的语法调用,$MY_COMMAND $MY_ARGUMENT因此它在shell脚本中执行shell命令MY_ARGUMENT作为参数?
使用Bash,您可以使用数组:
MY_COMMAND=("/bin/command" "-dosomething") ## Quoting is not necessary sometimes. Just a demo.
MY_ARGUMENTS=("fubar") ## You can add more.
"${MY_COMMAND[@]}" "${MY_ARGUMENTS[@]}" ## Execute.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7994 次 |
| 最近记录: |