在终端中使用重音符号/ Unicode访问文件名

时间:2014-09-23 14:20:24

标签: linux unicode command-line terminal

我有很多文件,如:

  • Camera.txt
  • Cámera.txt
  • ç我mera.txt

鉴于我不知道如何输入重音符号或中文字符,如何在终端中访问它们?

通常情况下,我在Linux中使用终端时会使用Tab键。

nano Cam<TAB>

将自动完成文件名(如果存在):

nano Camera.txt

但如果我无法输入非ASCII字符,似乎无法做到这一点。

locale的输出是:

LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY=en_GB.UTF-8
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER=en_GB.UTF-8
LC_NAME=en_GB.UTF-8
LC_ADDRESS=en_GB.UTF-8
LC_TELEPHONE=en_GB.UTF-8
LC_MEASUREMENT=en_GB.UTF-8
LC_IDENTIFICATION=en_GB.UTF-8
LC_ALL=

1 个答案:

答案 0 :(得分:0)

如果您的语言环境设置正确(这实际上意味着您的语言环境是UTF-8),有一些方法可以访问您的文件,或多或少无聊:

  • 如果您正在使用bash或其他使用GNU readline的shell,请按this advice启用Tab完成迭代,这样通过多次按Tab键,您将能够选择任何匹配的文件给定的前缀。

  • 使用shell通配符*?。如果Cámara.txt不是错误打印(请注意第二个a,而不是e),则可以将其选为C?mara.txt,而其他两个不匹配这个模板。

  • 最后,在大多数终端中,鼠标选择,复制和粘贴都是你的朋友。

现在这一切,给我们更多详细信息(至少是locale的输出以及您正在使用哪个shell)以获得更好的建议。