我正在编写
一个脚本,将
文件从本地系统移动到远程系统.它必须通过像ssh这样的加密通道来实现.做这个的最好方式是什么?我可以通过以下两个步骤执行此操作:
scp *.jpg user@ip:
rm *.jpg
但是,这不是一个原子过程(就像mv用于本地文件系统).如果复制失败,我将不再拥有本地副本.如何编写此脚本以确保仅在复制成功时才删除本地文件?
您可以将rsync与–remove-source-files一起使用:
rsync -avz --remove-source-files /local/dir/*.jpg user@ip:/remote/dir