rm -rf:Unix 认为 '-rf' 是一个文件而不是一个选项

rm -rf:Unix 认为 '-rf' 是一个文件而不是一个选项

我在 OS X Snow Leopard 笔记本电脑的终端中运行以下命令:

rm -rf /path/to/directory

正常情况下,这会删除目录和所有内容/子目录。但由于某种原因,它现在显示以下错误消息:

rm: –rf: No such file or directory
rm: /path/to/directory: is a directory

如果有人能告诉我为什么 rm 不能识别“-rf”作为选项字符串,我将不胜感激。

答案1

在第二个“代码”块中,您使用的是而不是-

您使用的字符不是-用于作为命令行选项前缀的 ASCII 字符,因此–rf被解释为文件名。

使用rm -rf /path/to/directory

答案2

rm某个东西的别名吗?如果它以某种方式出现在参数列表中,rm则会解释-rf为文件名--,例如rm -- -rf /path/directory

尝试在前面加上反斜杠,这样可以禁用别名。或者使用完整路径:

\rm -rf /path/directory
/bin/rm -rf /path/directory

答案3

您确定您输入的路径名正确吗?如果路径名包含空格,请确保加上引号。

rm -rf "/my folder/here"

答案4

只是随便尝试一下。你尝试过吗:

rm -r -f /path/to/directory

相关内容