这里已经有some existing questions被问及以其他用户身份运行命令的问题。但是,问题和答案集中在单个命令上,而不是一长串命令上。
例如,考虑以下脚本:
#!/bin/bash
set -e
root_command -p param1 # run as root
# these commands must be run as another user
command1 -p 'parameter with "quotes" inline'
command2 -p 'parameter with "quotes" inline'
command3 -p 'parameter with "quotes" inline'这里有几个重要的要点需要注意:
su或sudo运行。在这个例子中有三个命令,但是假设有更多的命令...上面的第二点防止使用以下语法:
su somebody -c "command"...since命令本身包含引号。
将命令“分组”并在另一个用户帐户下运行它们的正确方法是什么?
https://stackoverflow.com/questions/17758235
复制相似问题