windows和linux文件CRLF转换

本文介绍了CRLF换行符在Windows和Linux之间的差异,详细讲解了如何使用dos2unix和unix2dos工具进行文件换行符转换,并给出了实际操作示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. CRLF


CRLF -- Carriage-Return Line-Feed 回车换行。
CR:回车,ASCII 13, \r,
LF:换行,LF, ASCII 10, \n。
windows下使用 \r\n 换行, linux使用 \n 换行。
windows断行字符 ^M$, linux仅有 $
如果linux下shell文件包含^M字符,则无法执行,需要去掉 \r 。

2. dos2unix和unix2dos


dos2unix和unix2dos这两个命令用来转换CRLF。
dos2unix -kn file newfile
-k 保持源文件mtime
-n 保留旧文件,转换结果输出到新文件。

3. 使用举例


windows下新建的文件test。
#test 为windows文件
$ cat -A test
baidu^M$
google^M$

# 转换到linux
$ dos2unix -k -n test test.linux
dos2unix: converting file test to file test.linux in UNIX format ...

# 查看时间相同, 文件大小不一致
$ ll
-rw-rw-r--   1 work work        15 Aug  9 19:16 test
-rw-------   1 work work        13 Aug  9 19:16 test.linux

# cat -A 查看
$ cat -A test.linux 
baidu$
google$

#unix转换到windows
$ unix2dos test.linux 
unix2dos: converting file test.linux to DOS format ...

# 查看 大小和时间
$ ll
-rw-rw-r--   1 work work        15 Aug  9 19:16 test
-rw-------   1 work work        15 Aug  9 19:18 test.linux

地址: http://blog.csdn.net/yonggang7/article/details/38459143

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值