删除远程计算机上的文件

删除远程计算机上的文件

这是一个简单的 CLI,用于删除远程计算机上的几个文件

 ssh 182.2.34.1 "rm -f /etc/yum.repos.d/repo.1 master.er top.fg  REPO.l"

但只删除了repo.1文件

我的语法有什么问题

答案1

master.er、top.fg 和 REPO.1 将从当前目录(可能是您的主目录)中删除。您应该提供目录的完整路径。

答案2

该命令rm -f /etc/yum.repos.d/repo.1 master.er top.fg REPO.l将准确删除这些文件。当前目录中除第一个文件以外的文件都将被删除,该目录可能是远程计算机上的主目录。

如果要从中删除所有四个文件/etc/yum.repos.d,您可以使用

ssh 182.2.34.1 "cd /etc/yum.repos.d && rm -f repo.1 master.er top.fg REPO.l"

这将首先更改当前目录,如果成功,它将删除文件。


另请注意,理想情况下您不应以 root 身份工作,而应以非特权用户身份工作。这可能意味着您的ssh命令最终可能看起来像

ssh 182.2.34.1 "cd /etc/yum.repos.d && sudo rm -f repo.1 master.er top.fg REPO.l"

并且您以具有远程计算机访问权限的非 root 用户身份执行此操作sudo(很少有理由允许 root 进行 SSH 访问)。

这样做的好处是您可以明确声明以 root 身份发出操作的意图,并且会记录以 root 身份执行的命令。如果您需要恢复可能损坏系统的操作,那么日志记录就很重要。

相关内容