Bash 用乌姆劳特语
我从未将umlaute与ls一起使用过,因此出现了以下问题: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
$ 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
,然后使用从原始粘贴名称中提取的bä
。因此,文件名中原始的ä
与您为ls
输入的文件名不同。您可以检查名称中的字符代码。我的locale
是LANG=en_US.UTF-8
,这可能会对我的结果产生影响。您的locale
设置为什么?在unicode中,有两种可能生成ä
。1.原始的ä
。2.Ana
与联合透析(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
,然后使用从原始粘贴名称中提取的bä
。因此,文件名中原始的ä
与您为ls
输入的文件名不同。您可以检查名称中的字符代码。我的locale
是LANG=en_US.UTF-8
,这可能会对我的结果产生影响。您的locale
设置为什么?在unicode中,有两种可能生成ä
。1.原始的ä
。2.Ana
与联合透析(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')*