Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash:将非ASCII字符转换为ASCII_Bash_Ascii - Fatal编程技术网

Bash:将非ASCII字符转换为ASCII

Bash:将非ASCII字符转换为ASCII,bash,ascii,Bash,Ascii,如何使用Bash分别将vaigždės aukštybėj užges或äääÜÄ等字符串转换为zvaizdes aukstybej uzzes或auoOUA 基本上我只想转换所有不在拉丁字母表中的字符 谢谢根据您的机器,您可以尝试通过管道传输字符串 iconv -f utf-8 -t ascii//translit (或者不管您的编码是什么,如果不是utf-8) 给出: Hej pa dig, du den dara 您可能可以使用iconv 例如,字符串: Žvaigždės aukšt

如何使用Bash分别将
vaigždės aukštybėj užges
äääÜÄ
等字符串转换为
zvaizdes aukstybej uzzes
auoOUA

基本上我只想转换所有不在拉丁字母表中的字符


谢谢

根据您的机器,您可以尝试通过管道传输字符串

iconv -f utf-8 -t ascii//translit
(或者不管您的编码是什么,如果不是utf-8)

给出:

Hej pa dig, du den dara

您可能可以使用iconv

例如,字符串:

Žvaigždės aukštybėj užges或äüÖÜÜ196;

是文件testutf8.txt,utf8格式

运行命令:

iconv-f UTF8-tus-ASCII//translatit testutf8.txt

结果:

Zvaigzdes aukstybej Uzzes或auoOUA


您还可以使用python库执行以下操作:

$ echo "Žvaigždės aukštybėj užges äüöÖÜÄ" | unidecode
输出:

Zvaigzdes aukstybej uzges auoOUA

其他方法请参见。

批评这一点很容易,但一位新手付出了努力,被喊了下来,现在就这样离开了。[慢拍…]没有iconv我们该怎么办?@geotheory:…而且其他答案也不像是纯粹的抨击。它们都依赖于外部可执行文件。这个答案真正需要的是编译java文件并从bash运行它的指令。
$ echo "Žvaigždės aukštybėj užges äüöÖÜÄ" | unidecode
Zvaigzdes aukstybej uzges auoOUA