Linux教程

linux tr命令实现windows文本格式与linux文本格式间的转换

本文主要是介绍linux tr命令实现windows文本格式与linux文本格式间的转换,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

tr 命令
转换和删除字符

选项:
-d --delete:删除字符
-s --squeeze-repeats:把连续重复的字符以一个字符表示,即去重

该命令会把/etc/issue中的小写字符都转换成大写字符
tr ‘a-z’ ‘A-Z’< /etc/issue
删除fstab文件中的所有abc中任意字符
tr –d abc < /etc/fstab

windows文本格式与linux文本格式间的转换,windows格式文本中比linux格式文本中多回车键’\r’,通过tr删除’\r’实现格式转换
实例如下:
[root@localhost ~]# cat windows.txt
a
b
c

[root@localhost ~]# file windows.txt
windows.txt: ASCII text, with CRLF line terminators
[root@localhost ~]# hexdump windows.txt 
0000000 0d61 620a 0a0d 0063                    
0000007

[root@localhost ~]# tr -d '\r' <windows.txt >linux.txt

[root@localhost ~]# file linux.txt
linux.txt: ASCII text
[root@localhost ~]# hexdump linux.txt 
0000000 0a61 0a62 0063                         
0000005

[root@localhost ~]# cat linux.txt
a
b
c

注意:不能使用 tr 命令将文件从 Unix 格式转换为 Windows(DOS)。

除此之外Linux还提供了两种文本格式相互转化的命令:dos2unix和unix2dos,dos2unix把"\r\n"转化成"\n",unix2dos把"\n"转化成"\r\n"。
这篇关于linux tr命令实现windows文本格式与linux文本格式间的转换的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!