【发布时间】:2012-11-23 12:02:08
【问题描述】:
我正在尝试使用 awk 修改文本文件。一共有三列,我想删除第一列的部分文字:
range=chr1 20802865 20802871
range=chr1 23866528 23866534
到
chr1 20802865 20802871
chr1 23866528 23866534
我该怎么做?
我试过awk '{ substr("range=chr*", 7) }' 和awk '{sub(/[^[:space:]]*\\/, "")}1' 但它会删除文件的所有内容。
【问题讨论】:
-
下面的答案描述了更好的方法,但要明确一点:你当前的
awk命令的问题是你从不打印任何东西。在awk中,如果指定地址不带命令,则默认命令打印整行;但是由于您正在指定命令(通过使用{ ... }),除非您明确告诉它(通过调用print),否则它实际上不会打印任何内容。
标签: linux text replace sed awk