作用:让 bash 将一个字符串作为完整的命令来执行
问题:
执行命令"sudo echo "kettle" >> nohup.log"报错
-bash: nuhup.log: Permission denied
原因:
命令中含有echo 和>>两条bash命令,而sudo只会给后面的第一个命令赋予root权限,而">>"没有权限
解决:
使用/bin/bash -c指定将命令转为一个完整命令执行
$ sudo /bin/bash -c 'echo "kettle" >> nohup.log'
扩展:
#!/bin/sh是#!/bin/bash的缩减版
本文解析了在使用sudo执行带有重定向操作的命令时遇到的权限错误,并提供了解决方案。通过使用/bin/bash -c参数,可以确保整个命令被正确地赋予root权限。
2704

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



