将awk应用于除第一行以外的所有内容

将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处理,在每行的开头添加单词“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
条件将执行动作块,即仅对第二条记录执行
$0=”或“$0
”,但
1
将打印所有行。

在此添加一种方法,并使用GNU
awk
中显示的样本编写和测试

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&&/^或者/…