📅  最后修改于: 2023-12-03 14:39:28.391000             🧑  作者: Mango
在使用 Windows 系统编写的文本文件中,每行结尾处可能会出现一个看不见的控制字符 ^M(回车符),这会导致在 Linux 或 macOS 系统中打开该文件时出现问题。为了解决这个问题,可以使用以下方法从文本文件中删除每行末尾的 ^M。
sed -i 's/\r$//' filename
该命令使用了 sed 命令,其中 /
表示正则表达式的开始和结束,\r
表示回车符,$
表示行结尾。替换部分留空,则将回车符替换为空,实现删除每行末尾的 ^M。 -i
参数表示修改原文件。
tr -d '\r' <filename >newfilename
该命令使用了 tr 命令,其中 -d
参数表示删除指定字符,\r
为回车符。使用重定向将删除 ^M 后的文本写入新文件 newfilename 中。
除此之外,还有很多其他方法也可以用于删除每行末尾的 ^M,例如使用 awk 命令等。请根据自己的需求选择合适的方法。
以上是 Bash 如何删除每行末尾的 ^M 的介绍,希望对你有所帮助。