【发布时间】:2023-04-03 03:56:01
【问题描述】:
我正在尝试使用 ssh 从不同的服务器执行脚本
这是我从服务器 1 用来在服务器 2 上启动查询的命令:
ssh -t user@xxx.xxx.xxx.xx "cd /var/www/vhosts/xxxxx/subdomains/preprod/; sudo ./replace.sh";
但问题是当我执行sudo $home = /root 而脚本位于:/var/www/vhosts/xxxxx/subdomains/preprod/
我如何告诉 sudo 保护环境?
我尝试了sudo -P -,sudo -H,但没有任何运气。
【问题讨论】:
-
replace.sh 是否使用执行它的路径?否则你可以做 sudo /var/www/vhosts/xxxxx/subdomains/preprod/replace.sh。
-
感谢您抽出宝贵时间回答这个问题,它就是这样工作的。但我更想知道是否有一个参数可以传递给 sudo 以保持当前路径,而不是将其设置回 root ...