目录名中的 \uFFFD 字符

目录名中的 \uFFFD 字符

我有很多目录中带有 \uFFFD (65533) 字符。问题是由于这个字符我无法真正访问这个目录。

例如,我有一个名为:Foo�o(� == \uFFFD)的目录

  1. ls Foo�o不起作用(所以tab总是显示唯一可能的文件,但它永远不会完成它,因为它不起作用)
  2. ls Foo*工作中

问题是我不能使用 2. 方式,因为可能有其他目录以相同的字符开头。所以真正的问题是是否有办法逃脱这样的角色。

所以我正在寻找这个的工作版本:ls Foo\uFFFDo<= 不工作

答案1

如果您不能/不想依赖内部完成,则需要根据您使用的 shell 正确转义字符。例如,在 Bash 中,转义的正确方法是:

$ ls $'Foo\uFFFDo'
Foo�o

请参阅 shell 手册页中有关引用的部分。

答案2

尝试运行命令:

$ find Foo* -ls

相关内容