【问题标题】:Automate SFTP/SSH prompts on Linux在 Linux 上自动化 SFTP/SSH 提示
【发布时间】:2016-03-01 00:39:32
【问题描述】:

我对 shell 脚本和 ssh 命令等特别陌生。我想知道在将文件从一台服务器上传/下载到另一台服务器时是否可以自动化简单的 sftp 提示。

这是我的工作:

  • 命令:sftp username@ServerHost
  • 响应:无法确定主机“***”的真实性。 确定要继续连接(是/否)?
  • 在我输入“是”后,它会询问我密码

我本质上想要自动执行此操作,因为我将调用一个脚本,该脚本将通过源服务器上的 InfoSphere Datastage 序列作业将文件从我的源服务器上传到远程服务器。

附言。如果这个问题太幼稚了,请原谅我的无礼:)

【问题讨论】:

  • 切换到公钥认证。
  • 是的,我也在这样做,这只是出于好奇,因为我知道这种方法不受欢迎

标签: linux ssh sftp


【解决方案1】:

查看 expect,这有助于在脚本中自动处理此类问题。

这里有一个适合我的示例:

#!/usr/bin/expect -f

set timeout 30

set user "coder"
set node "repohost"
set fsrc "/home/coder/Sources/sysperf/makefile"
set fdst "/tmp"
set uspw "topSecret"

spawn sftp $user@$node:$fsrc $fdst
expect_after eof {exit 1}
expect "$user@$node's password: " {send "$uspw\r"}
expect "*100%*" 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-31
    • 2017-12-14
    • 1970-01-01
    • 1970-01-01
    • 2012-05-12
    相关资源
    最近更新 更多