如何删除名为“?”的文件在linux中?

时间:2013-11-12 06:39:37

标签: linux bash command

我创建了一个名为“?”的文件,有人知道如何删除它吗?

好像是吗?是linux中的一个特殊字符,我使用Redhat作为我的操作系统。

我已经尝试了

    rm ?
    rm "?"
    rm \?

它们都失败了,我得到的错误表明该文件不存在。

3 个答案:

答案 0 :(得分:20)

找到文件的inode:

ls -li

然后使用inode删除文件:

find . -inum <inode-number> -exec rm -i {} \;
顺便说一下,rm ?对我很好。这是我的bash版本:

# bash --version
GNU bash, version 4.1.5(1)-release (i486-pc-linux-gnu)

答案 1 :(得分:1)

使用此rm命令删除名为?的文件:

rm ./\?

来自其他目录的OR:

rm /path/to/\?

答案 2 :(得分:0)

您可以通过 inode 号码删除该文件。见下面的输出:

alplab:~/cad# ls -il
63051 -rw-r--r--    1 root     root             0 Nov 12 11:48 ?
alplab:~/cad# find . -inum 63051 -exec rm -i {} \;

我使用“find”命令删除了带有inode编号 63051 的文件(属于我的“?”文件的inode)。