Ric*_*dom 3 linux sftp sudo putty su
使用 (PuTTY)PSFTP.exe可以打开 shell 脚本以在 Linux 上执行某些操作。
在此示例中,我使用它psftp.exe来打开get30.txt文件。
%%PROJECT/ROOT_DIRECTORY%%\PuTTY\psftp.exe user@domain.nl -pw password -b "%%PROJECT/ROOT_DIRECTORY%%\Scripts\%%ENVIRONMENT/NAME%%\get30.txt"
Run Code Online (Sandbox Code Playgroud)
在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
Run Code Online (Sandbox Code Playgroud)
可惜psftp不认识sudo su。
sudo使用自己的用户登录后如何才能使用其他用户?
这是不可能的。您发送的这些命令不是任意 shell 命令 - 它们是 SFTP 命令。它们恰好看起来像 shell 命令(rm、cd 等),但它们只是镜像 shell 等效项。大多数 SFTP 实现中没有“sudo”命令,因此您无法执行此操作。
我错误的唯一情况是,如果您使用的是支持“su”的自定义 SFTP 服务器和客户端,例如 Van Dyke 软件提供的服务器和客户端。但是,您将在那里使用“su”,并且需要进行身份验证,而不是使用“sudo”。
此外,请参阅 serverfault stackoverflow 上的这篇文章: