是否可以将 bash 中的所有变音符号替换为普通字母?
即:ń -> n,Ą -> A,Ó -> O,Ć -> Ć,ę -> e 等...
$ iconv -f utf-8 -t ascii//translit <<< 'ń -> n, Ą -> A, Ó -> O, Ć -> Ć, ę -> e'
n -> n, A -> A, O -> O, C -> C, e -> e
$ iconv -f utf-8 -t ascii//translit <<< 'Kości zostały rzucone i żaden żywy człowien nie ujrzał już ćmy'
Kosci zostaly rzucone i zaden zywy czlowien nie ujrzal juz cmy
Ok, i found it:
echo "Kości zostały rzucone i żaden żywy człowien nie ujrzał już ćmy" | sed \
-e 's/ą/a/g' \
-e 's/ć/c/g' \
-e 's/ę/e/g' \
-e 's/ł/l/g' \
-e 's/ń/n/g' \
-e 's/ó/o/g' \
-e 's/ś/s/g' \
-e 's/[żź]/z/g' \
\
-e 's/Ą/Ą/g' \
-e 's/Ć/C/g' \
-e 's/Ę/E/g' \
-e 's/Ł/L/g' \
-e 's/Ń/N/g' \
-e 's/Ó/O/g' \
-e 's/Ś/S/g' \
-e 's/[ŻŹ]/Z/g' \
\
好吧,你会认为tr
这是完美的:
echo ńę | tr abcdefghijklmnopqrstńĄÓĆę abcdefghijklmnopqrstnAOCę
不过对我不起作用。
您可以运行 sed、awk、Perl、Python、PHP 等程序并将输出捕获到 Bash 变量中。