0

我正在尝试通过 Linux shell 脚本使用 sftp 命令从远程服务器获取所有文件,我的代码是:

    lftp -u ${sourceEnv},${password} sftp://${Host}<<EOF
    cd $sourceBuildDir/build/64/trace/products/lib/
    get *
    bye
    EOF

问题是我在运行脚本时得到下一个输出:get: Access failed: No such file (*)

它无法识别 * 符号,它基本上是我用来指定我需要从该目录中获取所有文件的,我试图像 ' ' 或 " " 一样引用它,但它仍然不起作用。每当我在 get 命令中指定文件的全名时,该脚本就可以工作,但我需要它更通用。你认为我应该如何实施?提前谢谢各位。

4

1 回答 1

0

我可能会先设置无密码、无密码的 ssh,以避免在命令行上传递密码。在命令行上发送的密码以 ps 显示,这是一个安全问题。

这也将使您可以使用单行 scp 而不是多行 lftp 来执行此操作。

http://stromberg.dnsalias.org/~strombrg/ssh-keys.html

于 2012-04-29T20:46:39.803 回答