为什么 scp 没有覆盖我的目标文件?

为什么 scp 没有覆盖我的目标文件?

我正在尝试通过命令备份文件

scp /tmp/backup.tar.gz 主机名:/home/user/backup.tar.gz

当我运行它时,scp 进度条会显示出来,看起来好像正在传输文件,但是当我登录到目标服务器检查文件时,时间戳和文件大小与旧版本相比没有变化,因此看起来 scp 根本没有覆盖旧文件。只有当我手动从目标服务器删除文件时,它才会起作用。

我正在运行 ubuntu,这发生在两台服务器上:一个 cygwin ssh 和一个 fedora core 3。

有人知道为什么会发生这种情况吗?我以为 scp 只会覆盖现有文件。

谢谢

答案1

如果我省略目标文件名而仅指定目录,那么它就可以工作:

scp /tmp/backup.tar.gz hostname:/home/user/

我不明白为什么,但这也可能是解决你的问题的方法。

答案2

在 debian/lenny 下这是可行的。也许你可以使用scp -v $localFile $RemoteHost:$RemotePath/$localFile

相关内容