我对shell脚本和ssh命令等特别陌生。我想知道在将文件从一台服务器上传/下载到另一台服务器时是否可以自动执行简单的sftp提示。
以下是我的工作:
我基本上想要自动执行此操作,因为我将调用一个脚本,该脚本将通过源服务器上的InfoSphere Datastage序列作业将文件从源服务器上载到远程服务器。
PS。请原谅我的傲慢如果这个问题无法理解它是否太少年了:)
答案 0 :(得分:0)
查看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%*"