这篇文章将为大家详细讲解有关linux下如何替换文件中的换行符,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
之前在linux系统执行以下命令: ls file |xargs sed -i 's/\n//g' 然而却发现没有任何效果,百度之后发现 sed是按行处理文本数据的,每次处理一行数据后,都会在行尾自动添加trailing newline...
之前在linux系统执行以下命令:
ls file |xargs sed -i 's/\n//g'
然而却发现没有任何效果,百度之后发现 sed是按行处理文本数据的,每次处理一行数据后,都会在行尾自动添加trailing newline。
如果非要使用sed命令,实现替换file文本内容的换行符为空的话,那么就要了解sed的分支条件命令,以及了解sed的pattern space模式空间和hold space保持空间。即,连续两行执行一次sed命令,这样就可以把前一行的\n替换完成。
最终实现命令如下例所示:
sed ":a;N;s/\n//g;ta" a.txt
N是把下一行加入到当前的hold space模式空间里,使之进行后续处理,最后sed会默认打印hold space模式空间里的内容。也就是说,sed是可以处理多行数据的。
:a和ta是配套使用,实现跳转功能。t是test测试的意思。
关于“linux下如何替换文件中的换行符”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。