删除带有特殊字符的文件夹名称

删除带有特殊字符的文件夹名称

我想知道如何删除/访问该文件夹?

$ ls -l
total 1
drwxrwxr-x 3 vsc44581 vsc44581 4096 Sep  8 10:19 ''$'\033'
$ rm -rf \'\'*
$ ls
''$'\033'
$ rm -rf \'\'\$*
$ ls
''$'\033'
$ ls \'\'*
ls: cannot access ''\'''\''*': No such file or directory

答案1

的某些现代版本ls默认会自动转义任何“棘手”字符,因此ls输出可以按原样复制/粘贴到新命令中。如果您尚未尝试过此操作,请尝试:

rmdir ''$'\033'

这实际上与以下内容相同:

rmdir $'\33'

或者使用不支持$'...'ksh93 引用形式的 shell:

rmdir "$(printf '\33')"

fishshell 中:

rmdir \33
rmdir \e

相关内容