文件及内容处理 - iconv、dos2unix
1. iconv:转换文件的编码格式
iconv命令的功能说明
iconv
命令是linux
下用于文件转编码的常用命令,对于同时使用windows
系统和linux
系统的同学来说文件转编码也是经常遇到的操作。
iconv命令的语法格式
iconv
[OPTION] [files]iconv
[选项...] [文件...]
iconv命令的常用参数说明:
iconv
参数很多,表1为iconv
命令的参数及说明:
表1:
iconv
命令的参数及说明
参数选项 | 解释说明 |
---|---|
-f, --from-code=名称 | 原始文本编码 |
-t, --to-code=名称 | 输出编码 |
-l, --list | 列举所有已知的字符集 |
-c | 从输出中忽略无效的字符 |
-o, --output=FILE | 输出文件 |
-s, --silent | 关闭警告 |
--verbose | 打印进度信息 |
-?, --help | 给出该系统求助列表 |
--usage | 给出简要的用法信息 |
-V, --version | 打印程序版本号 |
iconv命令的实践操作
范例1: 列出当前支持的字符编码:
iconv -l
范例2: 文件转
utf-8
编码
--------------------------------------------------------------==>将文件转换成utf8格式<==--------------------------------------------------------------iconv abc.sh -o utf8
范例3: 文件
GBK
编码转UTF-8
编码
iconv test.txt -f GBK -t UTF-8 -o test2.txt
范例4: 将文件
file1
转码,转后文件输出到fil2
中
--------------------------------------------------------------==>没-o那么会输出到标准输出<==--------------------------------------------------------------iconv -f GBK -t UTF-8 file1 -o file2
范例5:
GB2312
编码转UTF-8
编码
iconv -f gb2312 -t utf-8 file1 > file2oriconv -f gb2312 -t utf-8 file1 -o file2
2. dos2unix:将DOS格式文件转换成UNIX格式
dos2unix命令的功能说明
dos2unix
是将Windows
格式文件转换为Unix
、Linux
格式的实用命令。Windows
格式文件的换行符为\r\n
,而Unix&Linux
文件的换行符为\n
.dos2unix
命令其实就是将文件中的\r\n
转换为\n
。
dos2unix命令的语法格式
dos2unix
[options] [FILE ...] [-n INFILE OUTFILE ...]dos2unix
[参数] [文件]
dos2unix命令的常用参数说明:
dos2unix
参数不多,表1为dos2unix
命令的参数及说明:
表1:
dos2unix
命令的参数及说明
参数选项 | 解释说明 |
---|---|
-h | 显示命令dos2unix联机帮助信息。 |
-k | 保持文件时间戳不变 |
-q | 静默模式,不输出转换结果信息等 |
-v | 显示命令版本信息 |
-c | 转换模式 |
-o | 在源文件转换,默认参数 |
-n | 保留原本的旧档,将转换后的内容输出到新档案.默认都会直接在原来的文件上修改 |
dos2unix命令的实践操作
范例1: 多种演示
lltotal 5592drwxrwxr-x 2 dsw dsw 4096 Sep 30 15:15 ./drwxrwxr-x 14 dsw dsw 4096 Sep 30 15:13 ../-rwxr--r-- 1 dsw dsw 2857196 Sep 30 15:15 book.csv*-rwxr--r-- 1 dsw dsw 2857196 Sep 30 15:15 test.csv*dos2unix book.csv <-->在源文件基础上将此文件从dos格式转换为unix格式dos2unix -n book.csv newbook.csv <-->保留源文件dos2unix book.csv book.csv <-->一次转换多个文件dos2unix -k book.csv <-->不改变转换后文件的时间戳dos2unix -p book.csv <-->静默转换
今天就写到这里,有什么疑问或出现什么错误,随时欢迎大神们发表评论指点迷津