UTF8表示 | 文字コード | JIS表示 | 文字コード |
---|---|---|---|
− | \u2212 | - | \uFF0D |
〜 | \u301C | ~ | \uFF5E |
¢ | \u00A2 | ¢ | \uFFE0 |
£ | \u00A3 | £ | \uFFE1 |
¬ | \u00AC | ¬ | \uFFE2 |
— | \u2014 | ― | \u2015 |
‖ | \u2016 | ∥ | \u2225 |
linux下的iconv命令是一个用于字符编码转换的工具,它可以将一个字符编码转换为另一个字符编码。
1. 命令格式:
iconv [选项]… [-o 目标字符编码]… [输入文件]…
2. 常用选项:
– -f, –from-code=编码:指定输入文件的字符编码,默认为系统当前的本地字符编码。
– -t, –to-code=编码:指定输出文件的字符编码,默认为系统当前的本地字符编码。
– -o, –output=文件:指定输出文件的路径,如果不指定则输出到标准输出。
– -c, –discard-invalid:忽略非法字符,不进行转换。
– -s, –silent:静默模式,不显示转换过程中的警告信息。
– -l, –list:列出支持的字符编码列表。
3. 示例:
(1) 将一个文件从UTF-8编码转换为GBK编码:
iconv -f UTF-8 -t GBK input.txt -o output.txt
(2) 将一个文件从GBK编码转换为UTF-8编码并输出到标准输出:
iconv -f GBK -t UTF-8 input.txt
(3) 列出系统支持的字符编码:
iconv -l
********具体方法*********:
①部分字符转编码 :sed -i "s/$(echo -ne '\uFF0D')/$(echo -ne '\u2212')/g" 001.csv
整体文件变换:iconv -f UTF-8 -t SHIFT_JIS 001.csv > 003.csv
②整体文件变换:iconv -f UTF-8 -t SJIS//TRANSLIT:/mapping.txt 001.csv -o 002.csv
mapping.txt:
UTF-8 \uFF0D SHIFT_JIS \u2212