我们知道 -c 的意思是 command,所以 bash -c 后面应该跟一个 command。
用法:bash -c “cmd string”
通常使用shell去运行脚本,两种方法 bash xxx.sh,另外一种就是bash -c “cmd string”
对于bash -c “cmd string”,我们看看官方的说明解释:

使用bash -c 要注意两点:
1. bash -c "cmd string" 接的是shell命令字符串,用双引号括起来
2. bash -c "/path/to/file" 写文件的绝对路径,用双引号括起来,且文件要具有可执行权限

# cat /etc/shells




参考
Bash Variables
https://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html
关于 bash -c
https://www.dazhuanlan.com/2019/08/17/5d576a5758c5e
Linux中的bash -c 的使用详解
http://www.xckey.com/971.html
set命令
https://man.linuxde.net/set
Bash 脚本 set 命令教程
http://www.ruanyifeng.com/blog/2017/11/bash-set.html
What's “set — ”$progname“ ”$@“” means in shell script?
https://stackoverflow.com/questions/20088290/whats-set-progname-means-in-shell-script
Variable as command: eval vs bash -c
https://unix.stackexchange.com/questions/124590/variable-as-command-eval-vs-bash-c

eval command in Bash and its typical uses
https://stackoverflow.com/questions/11065077/eval-command-in-bash-and-its-typical-uses
Bash Using Eval
https://riptutorial.com/bash/example/31039/using-eval
本文详细解析了Bash中-c选项的使用方法及注意事项,包括如何通过它执行shell命令字符串和运行具有可执行权限的文件。同时,提供了丰富的参考资料,帮助读者深入理解Bash变量、set命令以及eval命令的典型用途。

5771

被折叠的 条评论
为什么被折叠?



