删除名为“。”的文件

删除名为“。”的文件

我在名为“.”的目录中找到了一个文件。不是表示目录的“.”,而是一个包含内容的实际文件。您可以想象,这会导致各种问题。问题是我不知道如何删除它。我该如何删除名为“.”的文件而不删除整个当前目录。下面是一个列表,仅供您参考:

drwx------  2 mysql    mysql     36864 Jun 28 14:11 .
drwxrwxr-x  5 mysql    mysql      4096 Jun 26 06:46 ..
-rw-r--r--  1 user1    users      2287 Jun 24 14:32 .
-rw-rw----  1 mysql    mysql        65 Jun 21 21:16 db.opt
-rw-r--r--  1 mysql    mysql         0 Jun 28 14:11 .hidden

您可以看到目录 (.),但也可以看到“user1”拥有的名为“.”的文件,文件大小为 2287。我该如何删除它?(运行 RHEL 4.6)。

答案1

一种方法是使用 inode 编号

ls -i

获取坏文件的 inode 号,假设为 42

find . -inum 42 -exec rm -i {} \;

答案2

再次检查其中是否没有空格ls -alQ

drwxr-xr-x  2 adam adam 4096 2010-06-28 14:23 "."
-rw-r--r--  1 adam adam    0 2010-06-28 14:23 ". "
drwxr-xr-x 71 adam adam 4096 2010-06-28 14:23 ".."

答案3

答案4

您可以交互运行 rm 并仅确认要删除的文件,例如:

rm -i ./.

相关内容