我在unix文件服务器上使用Application Oracle框架在管道分隔的文本文件中创建报告。此文件为iso-8859-1
编码格式。但我需要以UTF-8
格式发送到下游(我不能从Oracle框架中生成),所以我使用以下命令将其转换为UTF格式:
iconv -f iso-8859-1 -t UTF-8//TRANSLIT $i -o $i
但需要用倒置的感叹号字符"¡"
替换"|"
分隔符
那么如何在Unix中找到并替换"|"
字符并将其替换为"¡"
呢?
发布于 2018-07-24 16:28:13
倒置的感叹号是unicode U+00A1,是ISO-8859-1字符集的成员,八进制代码为0xa1或0241。因为您知道您的输入文件是iso-8859-1编码的,所以只需使用一个tr
命令就可以转换管道:
tr '|' '\241' < infile > outfile
然后,您可以使用iconv
将outfile从ISO-8859-1转换为utf8。
演示(在ISO-8859-1终端上):
$ echo 'a|b' | tr '|' '\241'
a¡b
$
https://stackoverflow.com/questions/51493118
复制相似问题