将awk应用于除第一行以外的所有内容
我希望应用一些awk处理,在每行的开头添加单词“OR”,第一行除外。不过,我还是希望打印出第一行 目前,我正在使用当前命令:将awk应用于除第一行以外的所有内容,awk,sed,Awk,Sed,我希望应用一些awk处理,在每行的开头添加单词“OR”,第一行除外。不过,我还是希望打印出第一行 目前,我正在使用当前命令: awk '$0="OR "$0' file.txt 这将为我提供以下输出: OR line1 OR line2 OR line3 etc 我怎样才能得到它,使它吐出以下内容 line1 OR line2 OR line3 etc 您可以使用此awk: awk'NR>1{$0=”或“$0}1”文件 第1行 或第2行 或第3行 此处NR>1条件将执
awk '$0="OR "$0' file.txt
这将为我提供以下输出:
OR line1
OR line2
OR line3 etc
我怎样才能得到它,使它吐出以下内容
line1
OR line2
OR line3 etc
您可以使用此awk:
awk'NR>1{$0=”或“$0}1”文件
第1行
或第2行
或第3行
此处
NR>1
条件将执行动作块,即仅对第二条记录执行$0=”或“$0
”,但1
将打印所有行。在此添加一种方法,并使用GNUawk
中显示的样本编写和测试
awk 'NR==1 {print} NR>1 {print "OR "$0}'
awk '{print val $0; val="OR "}' Input_file
对于显示的示例,输出将如下所示
line1
OR line2
OR line3
OR line4
另一个awk
$ cat justin.dat
line1
line2
line3
line4
$ awk ' { printf("%s%s\n",sep,$0); sep="OR " } ' justin.dat
line1
OR line2
OR line3
OR line4
$
sed
解决方案
$ sed '2,$s/^/OR /' file
从第二行开始,在每行的开头插入“或”。@carlospascal:它应该是
awk'NR>1&&index($0,“或”)!=1{$0=”或“$0}1”文件
的我们要检查行开始处是否存在或
,您是对的!!我删除了注释。这一条'NR>1&&/^或者/…
?