使用bash进程替换sudo命令
我想用bash进程替换sudo命令 例如,这里有一个适用于我的非sudo命令:使用bash进程替换sudo命令,bash,Bash,我想用bash进程替换sudo命令 例如,这里有一个适用于我的非sudo命令: $ cat <(echo "installed.txt") installed.txt $cat最好的方法可能是将所有内容都放在脚本中,并使用sudo在shell中尝试这样做: $ sudo bash -c 'cat <(echo "installed.txt for UID=$UID")' installed.txt for UID=0 $ sudo cat <(echo "installed
$ cat <(echo "installed.txt")
installed.txt
$cat最好的方法可能是将所有内容都放在脚本中,并使用sudo
在shell中尝试这样做:
$ sudo bash -c 'cat <(echo "installed.txt for UID=$UID")'
installed.txt for UID=0
$ sudo cat <(echo "installed.txt")
cat: /dev/fd/63: Bad file descriptor
$sudo bash-c'catsudo bash-c'cat问题中描述的行为是由于sudo
的设计造成的
$ sudo cat <(echo "installed.txt")
cat: /dev/fd/63: Bad file descriptor
如果使用-C
,则该命令将生效:
$ sudo -C64 cat <(echo "installed.txt")
installed.txt
$sudo-C64 cat一切都是一行;我想避免这样做。这也是公认的答案,但这不是最早发布的。我们两人同时疯狂地打字!你不可能全部赢。更重要的是,我不可能全部赢!3分钟写一行?嗯!=)这是安全风险吗?
Defaults closefrom_override
$ sudo -C64 cat <(echo "installed.txt")
installed.txt