awk的功能特别强大,其中一个功能就是生成新的列,不论这列是在第一列,最后一列,还是中间,随你任性插入。

举例来说,有下列文件test1.txt

test1.txt

a b c
1 2 3

现在我想在test1.txt的末尾新添一列,变成test2.txt

test2.txt

a b c cwy
1 2 3 cwy

则可以用到命令awk '{print $0,"cwy"}' test1.txt > test2.txt

如果是在test1.txt的中间新添一列,变成test3.txt

test3.txt

a b cwy c
1 2 cwy 3

则可以用到命令awk '{print $1,$2,"cwy",$3}' test1.txt > test3.txt

其他的以此类推。

原文链接:linux生成新的列(awk) - 橙子牛奶糖 - 博客园

awk -v OFS='\t' '{$2="2"$2;print}' a.txt > test.txt

shell 往文件中添加一列一样的字符串

例如:往文件file.txt中,添加一列字符串"20161020", 用制表符分割

awk '$0=$0"\t20161020"' file.txt

1、如果单纯的打印增加一个数就简单些,比如a.txt第二列要增加100.
cat a.txt|awk '{print $2+100}'
2、如果想增加后值后写入原文件或保存成另一个文件
cat a.txt|awk '{print $1" "$2+100}' > b.txt

shell awk使用(转) - hb91 - 博客园

本文链接:linux 文本的行、列操作_gnodli的博客-CSDN博客_linux列操作

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐