怎么用linux的sed方法批量处理文件
更新:HHH   时间:2023-1-7


这篇文章主要介绍“怎么用linux的sed方法批量处理文件”,在日常操作中,相信很多人在怎么用linux的sed方法批量处理文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用linux的sed方法批量处理文件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

工作中经常回遇到使用逗号替换换行符的场景:比如别人给你个excel,其中一列是id,我们需要通过id查询数据库数据,那么一般就是:

select * from t where id in(x,x,x)

这时候常用的方法就是把列复制出来,放到文本中,然后正则表达式替换一下:

vim a.txt
:%s/\n/,
:wq

但是当遇到一批文件需要这样处理的时候,一个一个vim打开处理实在太烦琐了。自然想到把命令s/\n/,统一发送给每个文件执行,经过一顿搜索,sed这个命令进入视线。不过sed,awk这样的工具都是面向行的,所以一开始

sed 's/\n//' *.txt

没来带来任何效果。再经过一顿搜索,发现sed有个高级用法,读下一行。 同时使用:a;**;ta进行循环,实现全部替换。

sed -i ':a;N;s/\n//;ta' *.txt

到此,关于“怎么用linux的sed方法批量处理文件”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注天达云网站,小编会继续努力为大家带来更多实用的文章!

返回大数据教程...