gtxyzz

如何在 Unix 和 Dos 格式之间转换文本文件

gtxyzz 运维技术 2022-11-18 381浏览 0

如何在 Unix 和 Dos 格式之间转换文本文件

本文介绍如何在 Unix 和 DOS 格式之间转换文本文件。DOS 文本文件带有回车符( \r )和换行符( \n )作为它们的换行符,而 Unix 文本文件只有( \n )换行符作为换行符。

有多种方法可以将 DOS 文本文件转换为 Unix 格式。但建议使用一个名为 dos2unix / unix2dos 的工具在 DOS 和 Unix 格式之间转换文本文件。

  • dos2unix
  • unix2dos
  • tr, awk, sed

你可以使用od命令识别文件是 DOS 格式还是 Unix 格式,如下所示。

[root@server1~]#od-bcwindows.txt
0000000141163144154146152015012141163144146141163144146
asdlfj\r\nasdfasdf
0000020015012141163147146015012141163144146015012141163
\r\nasgf\r\nasdf\r\nas
0000040144146015012141163144146147144015012144147
df\r\nasdfgd\r\ndg
0000056

如何在 Unix 和 Dos 格式之间转换文本文件

上面的输出表示这是一个 DOS 格式的文件,因为它包含了\r\n。

如何在 Unix 和 Dos 格式之间转换文本文件

如何在 Linux 上安装 dos2unix

CentOS中安装dos2unix:

[root@server1~]#yum-yinstalldos2unix

Ubuntu中安装dos2unix:

$sudoaptinstalldos2unix

如何将 DOS 文件转换为 UNIX 格式

以下命令将“windows.txt”文件从 DOS 格式转换为 Unix 格式。这个文件的修改就是把文件每一行的“\r”去掉。

[root@server1~]#dos2unixwindows.txt
dos2unix:convertingfilewindows.txttoUnixformat...

使用dos2unix命令将覆盖原始文件。

使用od命令查看,可以看到\r\n已经转换为\n了。

如何在 Unix 和 Dos 格式之间转换文本文件

如果要保留原始文件,请使用以下命令。这会将转换后的输出保存为新文件:

[root@server1~]#dos2unix-nwindows.txtunix.txt
dos2unix:convertingfilewindows.txttofileunix.txtinUnixformat...

如何在 Unix 和 Dos 格式之间转换文本文件

如何使用 tr 命令将 DOS 文件转换为 UNIX 格式

可以使用 tr 命令将 DOS 文件转换为 Unix 格式,如下所示:

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

上面命令使用-d选项删除\r回车符。

如何在 Unix 和 Dos 格式之间转换文本文件

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

如何使用 awk 命令将 DOS 文件转换为 UNIX 格式

以下使用 awk 命令格式将 DOS 文件转换为 Unix 格式:

[root@server1~]#awk'{sub("\r$","");print}'windows.txt>unix.txt

如何在 Unix 和 Dos 格式之间转换文本文件

上面命令使用awk命令的sub()函数,将以\r结尾的替换为空。

如何将 UNIX 文件转换为 DOS 格式

当将文件从 UNIX 转换为 DOS 格式时,它会在每一行中添加一个回车符( \r )。

[root@server1~]#unix2dosunix.txt

如何在 Unix 和 Dos 格式之间转换文本文件

上面命令操作之后,可以看到将unix格式的转换成dos格式了。

如果需要保留原文件,可以使用-n选项。

[root@server1~]#unix2dos-nunix.txtwindows.txt
unix2dos:convertingfileunix.txttofilewindows.txtinDOSformat...

如何使用 awk 命令将 UNIX 文件转换为 DOS 格式

以下使用 awk 命令将 UNIX 文件转换为 DOS 格式。下面使用 awk 命令将“unix.txt”文件转换为 DOS 格式文件“windows.txt”。

[root@server1~]#awk'sub("$","\r")'unix.txt>windows.txt

如何在 Unix 和 Dos 格式之间转换文本文件

总结

本文介绍如何在 Unix 和 DOS 格式之间转换文本文件。如果对你有帮助的话点个[在看]后,分享到朋友圈吧~

如何在 Unix 和 Dos 格式之间转换文本文件

继续浏览有关 系统运维 的文章
发表评论