如何在终端中删除名为“-f”、“-r”或其他的目录/文件

如何在终端中删除名为“-f”、“-r”或其他的目录/文件

只是想知道如何删除名为“-F“,”-r“或其他使用终端。

答案1

这实际上是在手册中

要删除名称以“-”开头的文件(例如“-foo”),请使用以下命令之一:

         rm -- -foo
         rm ./-foo

答案2

rm命令支持一个--选项,该选项告诉它任何以开头的进一步参数-都应按字面意思理解,而不能被视为选项标志。例如:

rm -- -r

许多其他 Unix 命令也支持类似的功能,它是常用实用程序的开箱即用功能,getopt通常用于命令选项解析。

请注意,引用文件名,rm "-r"例如不是工作(而当你试图删除一个名为*(星号)的文件时,引用会有所帮助rm "*")。这是因为通配符扩展由你的 Unix shell 处理您的命令被调用,而引用会禁用这种扩展。但选项实际上是命令程序(例如rm)本身获得的正常参数,由其决定如何处理 - 它们对 shell 来说并不“特殊”,因此引用不起作用。

相关内容