我试图通过 SSH 以 sudo 身份运行命令,但没有成功:
ssh -t -p 2222 name@server /usr/bin/sudo << EOF
chmod u-r /xy
chmod +x /xy
/xy
sleep 5
ps aux | grep xy
sleep 5
exit
EOF
Run Code Online (Sandbox Code Playgroud)
这是行不通的。没有 -t 和 /usr/bin/sudo:
sudo: no tty present and no askpass program specified
Run Code Online (Sandbox Code Playgroud)
单行命令正在工作:
ssh -p 13001 -t name@server 'sudo /xy'
Run Code Online (Sandbox Code Playgroud)
Jay*_*Jay 10
这应该有效:
ssh -t -p 2222 name@server "/usr/bin/sudo bash -c 'chmod u-r /xy; chmod +x /xy; ...'"
Run Code Online (Sandbox Code Playgroud)