我有很多目录中带有 \uFFFD (65533) 字符。问题是由于这个字符我无法真正访问这个目录。
例如,我有一个名为:Foo�o
(� == \uFFFD
)的目录
ls Foo�o
不起作用(所以tab总是显示唯一可能的文件,但它永远不会完成它,因为它不起作用)ls Foo*
工作中
问题是我不能使用 2. 方式,因为可能有其他目录以相同的字符开头。所以真正的问题是是否有办法逃脱这样的角色。
所以我正在寻找这个的工作版本:ls Foo\uFFFDo
<= 不工作
答案1
如果您不能/不想依赖内部完成,则需要根据您使用的 shell 正确转义字符。例如,在 Bash 中,转义的正确方法是:
$ ls $'Foo\uFFFDo'
Foo�o
请参阅 shell 手册页中有关引用的部分。
答案2
尝试运行命令:
$ find Foo* -ls