Linux:批量修改分隔符(awk、BEGIN、FS、OFS、print命令)

批量修改文件的分隔符,可以用FS和OFS命令

FS:Field Separator,字段分隔符

OFS:Out of Field Separator,输出字段分隔符

假设有这么一个文件file1.txt,其内容如下:

技术分享

可以看出,file1的分隔符很长,不止一个空格符组成,因此我们需要先将分隔符统一一下,输入一下命令:

awk -F " " ‘{if($1~/^16/) print $1,$2,$3,$4}‘ file1.txt > file2.txt

  生成file2.txt,如下图片:

技术分享

分隔符统一为一个空格,接下来将分隔符统一修改为逗号“,”,输入一下命令:

awk ‘BEGIN{ FS=" ";OFS="," }{ print $1,$2,$3,$4 }‘ file2.txt > file3.txt

  生成的文件file3.txt如下:

技术分享

如果想将分隔符修改为冒号,只需要将OFS=","修改为OFS=":"

 

文章来自:http://www.cnblogs.com/chenwenyan/p/7464619.html
© 2021 jiaocheng.bubufx.com  联系我们
ICP备案:鲁ICP备09046678号-3