DOS/Windows和Linux/Unix的文件格式转换
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,DOS/Windows和Linux/Unix的文件换行回车格式不同,基于 DOS/Windows 的文本文件在每一行末尾有一个 CR(回车)和 LF(换行),而 UNIX 文本只有一个换行。1)、把D
千家信息网最后更新 2025年12月02日DOS/Windows和Linux/Unix的文件格式转换DOS/Windows和Linux/Unix的文件换行回车格式不同,基于 DOS/Windows 的文本文件在每一行末尾有一个 CR(回车)和 LF(换行),而 UNIX 文本只有一个换行。
1)、把Dos/Windows下的文件移至Linux/Unix系统
虽然很多程序不在乎 DOS/Windows 格式的 CR/LF 文本文件,但是有几个程序却在乎 -- 最著名的是 bash,只要一遇到回车,它就会出问题。以下 sed 调用将把 DOS/Windows 格式的文本转换成可信赖的 UNIX 格式:
$ sed -e 's/.$//' mydos.txt > myunix.txt
该脚本的工作原理很简单:替代规则表达式与一行的最末字符匹配,而该字符恰好就是回车。我们用空字符替换它,从而将其从输出中彻底删除。如果使用该脚本并注意到已经删除了输出中每行的最末字符,那么,您就指定了已经是 UNIX 格式的文本文件。也就没必要那样做了!
2)、把Linux/UNIX 文本移至 Windows 系统,使用以下脚本执行必需的格式转换:
$ sed -e 's/$/\r/' myunix.txt > mydos.txt
在该脚本中,'$' 规则表达式将与行的末尾匹配,而 '\r' 告诉 sed 在其之前插入一个回车。在换行之前插入回车,立即,每一行就以 CR/LF 结束。请注意,仅当使用 GNU sed 3.02.80 或以后的版本时,才会用 CR 替换 '\r'。
3)使用dos2unix和unix2dos命令,这种方法最简单。
在window上随便创建一个文件Noname2.txt,内容如下:
sfadadfad
sfasd
fads
fasdfads
在Linux上用hexdump工具进行查看:
A52>hexdump Noname2.txt
0000000 6673 6461 6461 6166 0d64 730a 6166 6473
0000010 0a0d 6166 7364 0a0d 6166 6473 6166 7364
0000020 0a0d
0000022
用dos2unix工具转换后:
A52>dos2unix Noname2.txt
dos2unix: converting file Noname2.txt to UNIX format ...
A52>hexdump Noname2.txt
0000000 6673 6461 6461 6166 0a64 6673 7361 0a64
0000010 6166 7364 660a 7361 6664 6461 0a73
000001e
再使用unix2dos转换回去:
A52>unix2dos Noname2.txt
unix2dos: converting file Noname2.txt to DOS format ...
A52>hexdump Noname2.txt
0000000 6673 6461 6461 6166 0d64 730a 6166 6473
0000010 0a0d 6166 7364 0a0d 6166 6473 6166 7364
0000020 0a0d
0000022
1)、把Dos/Windows下的文件移至Linux/Unix系统
虽然很多程序不在乎 DOS/Windows 格式的 CR/LF 文本文件,但是有几个程序却在乎 -- 最著名的是 bash,只要一遇到回车,它就会出问题。以下 sed 调用将把 DOS/Windows 格式的文本转换成可信赖的 UNIX 格式:
$ sed -e 's/.$//' mydos.txt > myunix.txt
该脚本的工作原理很简单:替代规则表达式与一行的最末字符匹配,而该字符恰好就是回车。我们用空字符替换它,从而将其从输出中彻底删除。如果使用该脚本并注意到已经删除了输出中每行的最末字符,那么,您就指定了已经是 UNIX 格式的文本文件。也就没必要那样做了!
2)、把Linux/UNIX 文本移至 Windows 系统,使用以下脚本执行必需的格式转换:
$ sed -e 's/$/\r/' myunix.txt > mydos.txt
在该脚本中,'$' 规则表达式将与行的末尾匹配,而 '\r' 告诉 sed 在其之前插入一个回车。在换行之前插入回车,立即,每一行就以 CR/LF 结束。请注意,仅当使用 GNU sed 3.02.80 或以后的版本时,才会用 CR 替换 '\r'。
3)使用dos2unix和unix2dos命令,这种方法最简单。
在window上随便创建一个文件Noname2.txt,内容如下:
sfadadfad
sfasd
fads
fasdfads
在Linux上用hexdump工具进行查看:
A52>hexdump Noname2.txt
0000000 6673 6461 6461 6166 0d64 730a 6166 6473
0000010 0a0d 6166 7364 0a0d 6166 6473 6166 7364
0000020 0a0d
0000022
用dos2unix工具转换后:
A52>dos2unix Noname2.txt
dos2unix: converting file Noname2.txt to UNIX format ...
A52>hexdump Noname2.txt
0000000 6673 6461 6461 6166 0a64 6673 7361 0a64
0000010 6166 7364 660a 7361 6664 6461 0a73
000001e
再使用unix2dos转换回去:
A52>unix2dos Noname2.txt
unix2dos: converting file Noname2.txt to DOS format ...
A52>hexdump Noname2.txt
0000000 6673 6461 6461 6166 0d64 730a 6166 6473
0000010 0a0d 6166 7364 0a0d 6166 6473 6166 7364
0000020 0a0d
0000022
文件
格式
文本
脚本
一行
字符
工具
末尾
程序
系统
表达式
规则
输出
不同
著名
必要
内容
原理
只有
可信
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
流行的cpk网络安全
会计专业 软件开发
软件开发并且出售
软件开发课未来规划
如何将数据库系统分离
行尸走肉服务器我的世界攻略
专科生能学网络安全专业吗
南昌大同欣网络技术有限公司
寒假护苗网络安全感想
命运之子哪个服务器
ps4软件开发商
数据库绘图工具
网络安全法共计
阿里云服务器 外网访问
管理打印服务器队列
23魔方祖源数据库河南张
网络安全手抄报模板空白
深圳支付软件开发公司
最好的网络安全宣传图片
青少年网络安全知识简单文字
群晖服务器安全吗
gis裁剪数据库图斑
行尸走肉服务器我的世界攻略
电力国外期刊数据库
互联网公司科技服务
网络安全管控系统
网络安全巡查要点
数据库系统教程知识点总结
虎牙直播怎么查看服务器地址
北京有几个互联网科技公司