使用(PuTTY)PSFTP.exe
可以打开打开Shell脚本以在Linux上执行某些操作。
在此示例中,我使用psftp.exe
打开get30.txt
文件。
%%PROJECT/ROOT_DIRECTORY%%\PuTTY\psftp.exe [email protected] -pw password -b "%%PROJECT/ROOT_DIRECTORY%%\Scripts\%%ENVIRONMENT/NAME%%\get30.txt"
在
get30.txt
中,我有以下操作:sudo su -l4097gps
cd /appl/gps/RIT/IN/30/RAP-T1
chmod 777 GP*.*
get -r /appl/gps/RIT/IN/30/RAP-T1
rm /appl/gps/RIT/IN/30/RAP-T1/*
quit
不幸的是
psftp
无法识别sudo su
。使用自己的用户登录后,如何将
sudo
传递给其他用户? 最佳答案
这是不可能的。您要发送的命令不是任意的Shell命令-它们是SFTP命令。它们恰好看起来像shell命令(rm,cd等),但是它们只是在镜像等效的shell。大多数SFTP实现中没有“sudo”命令,因此您无法执行此操作。
我唯一错的情况是,如果您使用的是支持“su”的自定义SFTP服务器和客户端,例如Van Dyke软件提供的客户端。但是,您将在那里使用'su',并且需要进行身份验证,而不是使用'sudo'。
此外,请参阅有关serverfault stackoverflow的文章:
How to change user for more rights on a sftp client