如何删除名为“;”(分号)的目录?

如何删除名为“;”(分号)的目录?

在共享计算机上以某种方式;创建了一个目录(其中包含很多内容)。

我只能通过 shell 访问这台机器,因此无法使用任何 GUI 文件资源管理器来删除该文件。

rm -rf ;

导致奇怪的行为,因为分号可能充当命令分隔符并且不会被评估为目录名称。

rm -rf ./; rm:拒绝删除“.”或“..”目录:跳过“./”

rm:拒绝删除“.”或“..”目录:跳过“./”

此外,我不想删除其他目录,因此我不愿意使用通配符之类的东西。

如何安全地递归删除该分号目录?

答案1

引用它的名字。引用该名称将阻止 shell 将其解释为命令终止符。

rm -rf ';'

对于名称中包含 shell 通常特殊处理的其他字符的文件的处理也是如此,例如文件名通配字符、、、、、、、换行符、&制表符、空格等,以及可能属于shell 的语法。<>(){}

答案2

当我在删除目录时遇到困难时,我会下载工具 mc(midnight Commander),它是一个与 Norton Commander 非常相似的工具,并且具有出色的功能和 GUI,您可以使用它来删除有问题的目录

尝试

yum install mc -y 

安装后在命令行中只写

mc

相关内容