linux文件去掉第一列数,linux ? 修改文件中的文本(数百万列,制表符分隔) ? 删除除第一个之外的所有选项卡,并在最后一列后面添加新列...

发布于:2021-10-16 23:15:41

在这里,我想帮助您修改文本文件.


我想修改文件中的文本(数百万列,制表符分隔) ? 删除除第一个之外的所有选项卡,并在最后一列后面添加新列.


>文件(这里有4列,但是


我的真实文件中有数百万列,


制表符分隔)我现在有:


day1 1 3 7


day7 2 4 8


day3 2 5 6


>我想要的文件,删除分隔符


(从第二个),并添加三个


新列(一列与


第一个,另外两个相同


所有相同列中的值,此处为x


和y).


day1 137 day1 x y


day7 248 day7 x y


day3 256 day3 x y


我打算用awk和sed混合使用.但是,我尝试了许多不同的方法,我仍然不知道如何做到这一点.


你能帮我一下吗?提前致谢.


最好,


解决方法:


使用gawk -f script.awk script.awk包含的输出:


{


old=$1;


$0 = substr($0, length($1)+1);


gsub(/[[:space:]]*/, "", $0);


print old, $0, old, "x", "y";


}


观看现场演示here(感谢belisarius给我看这个网站)


标签:linux,awk,perl,sed,unix


来源: https://codeday.me/bug/20190903/1796560.html

相关推荐

最新更新

猜你喜欢