操作文件名中包含通配符的文件

操作文件名中包含通配符的文件

我刚刚发现我实际上可以*.txt在 Ubuntu 中创建一个名为的文件。

假设我在当前目录中有a.txt b.txt和。*.txt

如何使用终端删除第三个?(rm *.txt将删除全部)

答案1

您需要转义或引用通配符:

rm '*.txt'
rm \*.txt

答案2

只需使用 ' 即可。此通配符(我不知道它是否真的这么叫)可确保 shell 将其读取为字符串而不是通配符。例如:

rm '*.txt'

答案3

在更复杂的情况下,有时命令行完成bashzsh可以提供帮助:

对于名为 的文件foo*.txt,在输入前两个字符后按 Tab 键即可完成:

$ mv fo<TAB>

可以完成文件名(包括其不常见的字符)-并根据需要自动转义它们:

$ mv foo\*.txt

(按下 Tab 键后的命令行)

相关内容