如何操作名为 - (即 dash)的文件?

如何操作名为 - (即 dash)的文件?

我有一个名为的文件-

我不知道它从何而来,但我想深入研究它以了解更多信息。但是,所有 Linux 命令都认为我指的是标准输入,或者当我使用-\-或 时,它们只会给我一个错误消息$'-'

tail -
tail \-
tail $'-'

答案1

最简单的方法就是使用不是字面意义上的文件名表示-。例如:

tail ./-

(其中./明确引用当前目录)。

顺便说一句,这也是防止文件名被解释为选项的最简单的方法(例如,为了确保名为的文件-f不会被解释为选项,请改用./-f)。

答案2

尝试这个:

ls -i

您应该看到文件的 inode 编号:

10833498 -

然后

find . -inum 10833498 -exec tail '{}' \;

这将找到带有 inum 的文件并执行tail它。

相关内容