Linux中sudo bash -c的含义及脚本中-c参数作用咨询
sudo bash -c 含义拆解
整体作用
sudo bash -c 是Linux下的组合命令,简单说就是以超级用户(root)权限启动一个临时Bash shell,执行指定的命令后就退出:
sudo:让后续命令以root身份运行,解决普通用户权限不足的问题;bash:调用Bash解释器,启动一个新的shell进程;-c:Bash的参数,用来指定要执行的命令内容。
-c 参数的具体作用
-c 是Bash的核心参数之一,它的作用是:告诉Bash不要进入交互式的shell环境(即等待输入命令的终端界面),而是直接执行紧跟在-c后面的命令字符串,执行完毕后立即终止这个Bash进程。
举个脚本里的实际用法例子:
# 脚本中的某一行 sudo bash -c "touch /etc/custom_config.conf && chmod 644 /etc/custom_config.conf"
这里用-c把两个需要root权限的命令(创建系统配置文件、修改权限)打包成一个字符串,让Bash一次性执行,既避免分两次用sudo提权,也能保证两个命令在同一个root权限的shell环境下完成。
内容的提问来源于stack exchange,提问作者zebra_rey
相关产品推荐
相关产品推荐

