我正在运行以下使用 lftp 的脚本:
lftp -f "
open sftp://myuser@sftp_server:443
lcd $FTP_FOLDER
mirror --no-empty-dirs --only-newer --verbose $FTP_FOLDER $LOCAL_FOLDER
bye
"
现在,如果我已经将公钥传递给服务器管理员,那么如果在命令行中执行此操作:
sftp -P 443 myuser@sftp_server
我已连接并收到 sftp 提示符。当我执行此操作时,pwd 命令告诉我需要同步的文件夹的路径为“/0Datos”,这就是 $FTP_FOLDER 的值。
当我执行脚本时,我得到:
source: Is a directory
Password:
有没有办法在服务器不要求我输入密码(我没有密码)的情况下进行连接,以便将文件夹 0Datos 同步到我的本地文件夹?
最佳答案
只需在 URL 中提供一个空密码即可:
open sftp://myuser:@sftp_server:443
lftp 在连接到服务器之前会询问密码,但如果服务器不需要密码,lftp 不会发送密码。
关于command-line-interface - 使用 lftp 以无密码方式连接到 sftp 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22556867/