我在bash中完成了我的简单脚本 - 此脚本应该将具有特定新名称的文件从服务器1传输到远程服务器2.
有人可以帮忙解决这个问题并将所有脚本传输到Python。
#!/bin/bash
path=/opt/log #Im in dir /opt/log
fdate=$(date +%Y%m%d -d "-1 day") # yesterday date
file=maillog-$fdate # log from yesterday which will be transfer to remote server
cp $path/$file /tmp/$HOSTNAME-$file # copy $file to /tmp with the specific name of $HOSTNAME + $File name
gzip /tmp/$HOSTNAME-$file # ZIP the file
rserver=hansus@hansus.edu.net # remote server
rpath=/opt/log/maillog # remote path
scp /tmp/$HOSTNAME-$file.gz $rserver:$rpath # copy the file to remote server to remote path
rm /tmp/$HOSTNAME-$file.gz # clean the /tmp dir
#Done
答案 0 :(得分:0)
有几个解决方案。
一个选项是齐声:
http://xmodulo.com/synchronize-files-between-two-servers.html
rsync解决方案:
首先需要ssh到其中一个服务器(这应该是微不足道的)。进入后你可以运行它。
rsync -rtlzv --ignore-errors -e ssh . username@hostname:/path/to/directory
来自:http://darcynorman.net/2009/01/07/how-i-move-stuff-between-servers-with-rsync/
scp解决方案:
我实际上认为这是最优雅的方式,因为你不必首先使用ssh。 Somethibng喜欢这样:
nohup scp alice@source:/the/answer/of/all bob@target.example.com:/var/tmp/42 &
来自:https://unix.stackexchange.com/questions/65116/does-a-scp-transfer-close-when-i-close-the-shell