我按照https://stackoverflow.com/questions/2135644/how-can-i-define-a-bash-alias-as-a-sequence-of-multiple-commands中的说明创建自己的 bash 脚本。如下:
sudo -u otheruser -i
alias cd1="cd /dir/one/"
alias cd2="cd /dir/two/"
我希望这些别名可用于otheruser
. 我的目标是将它作为可执行文件运行,但为了测试我正在采购它(以避免https://stackoverflow.com/questions/2197461/how-to-set-an-alias-inside-a-bash-中的问题shell-script-so-that-is-it-visible-from-the-ou ) 之类的source ./myscript
。
即使这样做,sudo 仍然有效,但以下别名均不可用(对于otheruser
)。您是否认为别名被应用于调用此命令的用户,而不是新用户?或者是否有一些规则在对另一个用户执行 sudo 后忽略脚本中的命令?