我正在使用 scp 将内容复制到远程位置。但有时 scp 无法按预期工作,我发现有时复制无法正确完成(可能是当我将新文件添加到要复制的文件夹中时)。
因此我想先删除远程文件夹然后进行复制以确保我得到的正是我需要的内容。
还有其他类似 scp 的命令吗(例如 srm 或 smv)?或者有办法删除远程文件夹和文件吗?
答案1
这ssh
命令将允许你在远程主机上执行几乎任何命令,例如,
ssh yourlogin@remotehost rmdir somedir
其中,此示例中的somedir
是相对于 yourlogin 的主目录的。
答案2
Rsync 将复制整个路径/树并检查目标中已有的文件,如果这些文件未发生改变,则不会再复制它们。如果您使用 --delete 选项,它将删除目标中不再存在于源中的任何文件。它通过 ssh 工作
答案3
如果你的远程 SSH 服务器支持SFTP 子系统(大多数情况下都是这样的,除非明确禁用),你可以使用sftp
壳(或任何其他SFTP 客户端)来操作远程服务器上的文件和目录。
不幸的是,基本sftp
shell 显然做了一件事不是handle 是递归目录删除;要删除目录,您必须先删除其所有内容。不过,大多数其他客户端(尤其是图形客户端)通常都支持它。
(你没有提到你的本地操作系统是什么,但如果它是 Linux,你可以使用本地文件管理器作为 GUI SFTP 客户端通过将其指向类似 sftp:// 的 URL用户@主持人/小路/. 对于 Windows,温SCP是一个不错的客户,并且档案是一个很好的跨平台解决方案。
答案4
或者,将远程目录挂载到本地目录,然后将其删除rm -r /path_to_directory_to_remove
,最后卸载该目录即可。