我可以使用以下命令将文本写入文件
中每行的开头sed 's/^/Adding Text /' filename
但是我想跳过第一行,并在开头单独添加另一个文本到第一行。
我当前的档案:
Summary, Task Id, Project ID, Project
Test file for Project Task, T12345, P123456, Test
我正在寻找的输出是:
Type, Summary, Task Id, Project ID, Project
Adding Text, Test1 file for Project Task, T12345, P123456, Test
Adding Text, Test1 file for Project Task, T12345, P123456, Test
Type
应添加到第一行,Adding Text
应添加到所有其他行。
答案 0 :(得分:3)
试试这个:
sed '1s/^/Type, /;2,$s/^/Adding Text, /' filename
1s/^Type, /
:在第1行的开头插入Type,
2,$s/^/Adding Text, /
:从第2行开始,在每行的开头插入Adding Text,
或者您可以使用awk
awk 'NR==1{print "Type,",$0}NR>1{print "Adding Text,",$0}' filename
答案 1 :(得分:0)
这是一个awk
awk '{print NR==1?"Type,":"Adding Text,",$0}' file
1
并打印一件事,如果没有打印其他的话。使用括号可能会更强大。
awk '{print (NR==1?"Type,":"Adding Text,"),$0}'
awk '{print (NR>1?"Adding Text,":"Type,"),$0}'