Bash 用乌姆劳特语

Bash 用乌姆劳特语,bash,ls,Bash,Ls,我从未将umlaute与ls一起使用过,因此出现了以下问题: $ ls ba* ball_1.mp4 ball_partner.mp4 bälle_mit_2.mp4 $ ls bä* ls: bä*: No such file or directory $ ls bäl* ls: bäl*: No such file or directory $ ls bal* ball_1.mp4 ball_partner.mp4

我从未将umlaute与ls一起使用过,因此出现了以下问题:

$ ls ba*
ball_1.mp4                ball_partner.mp4          bälle_mit_2.mp4          

$ ls bä*
ls: bä*: No such file or directory

$ ls bäl*
ls: bäl*: No such file or directory

$ ls bal*
ball_1.mp4   ball_partner.mp4 
针对os x的一些非理想解决方案:

$ basename $(mdfind  bä  -onlyin .)
$ bälle_mit_2.mp4

如何获得与bash更相关的解决方案?

我在我的Linux机器上尝试了这个方法,然后
ls bä*
向我展示了该文件。我这样做是通过将你的
bälleäu mit_2.mp4
复制到粘贴缓冲区,进行
touch
,然后使用从原始粘贴名称中提取的
。因此,文件名中原始的
ä
与您为
ls
输入的文件名不同。您可以检查名称中的字符代码。我的
locale
LANG=en_US.UTF-8
,这可能会对我的结果产生影响。您的
locale
设置为什么?在unicode中,有两种可能生成
ä
。1.原始的
ä
。2.An
a
与联合透析(U+0308)。用
echo|hextump
echo b*lle|u mit_2.mp4|hextump
检查表示。线程向我显示了主题框架,现在似乎有答案了?@lowerer如何说在我的机器上有两种表示形式ä'\x61\xcc\x88'和'\xc3\xa4'。因此,一个更通用的解决方案可能是:ls$(echo-e'\x62\x61\xcc\x88')*我在我的Linux机器上尝试了这个方法,并且
ls bä*
向我显示了该文件。我这样做是通过将你的
bälleäu mit_2.mp4
复制到粘贴缓冲区,进行
touch
,然后使用从原始粘贴名称中提取的
。因此,文件名中原始的
ä
与您为
ls
输入的文件名不同。您可以检查名称中的字符代码。我的
locale
LANG=en_US.UTF-8
,这可能会对我的结果产生影响。您的
locale
设置为什么?在unicode中,有两种可能生成
ä
。1.原始的
ä
。2.An
a
与联合透析(U+0308)。用
echo|hextump
echo b*lle|u mit_2.mp4|hextump
检查表示。线程向我显示了主题框架,现在似乎有答案了?@lowerer如何说在我的机器上有两种表示形式ä'\x61\xcc\x88'和'\xc3\xa4'。因此,更通用的解决方案可能是:ls$(echo-e'\x62\x61\xcc\x88')*