使用 awk 操作文件的输出

贝内特

我在 unix 中有文件

a,b,c,d
e,f,g,h
u,v,x,y

我想单独打印第一个 col 和所有其他 col

IE

a,b
a,c
a,d
e,f
e,g
e,h

等等。

提前致谢

纳维尔·福耶尔

这可以用这个 perl one-liner 来完成

perl -F, -anle '$first=shift@F;print"$first,$_"for@F' <input.txt

这个怎么运作:

要了解开关,只需键入 perl -h

  • -a结合-F,:将(默认变量)输入与,into(用于自动拆分的数组)分开@F
  • -n : 循环
  • -l : 行处理 chomp 行尾并在打印后添加换行符
  • -e : 内联程序

有关特殊变量和函数的信息,请参阅perldoc perlvarperldoc perlfun

  • shift : 删除数组前面的元素

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章