我有一个包含以下内容的txt文件:
name space valid date1 date2
abc mon yes 2022-10-10 2022-10-10
def tue yes 2022-10-10 2022-10-10
ghi wed yes 2022-10-10 2022-10-10
jkl thu yes 2022-10-10 2022-10-10
我需要在文件的第四个位置添加一列,标题为“location”,内容如下所示。
name space valid location date1 date2
abc mon yes newyork 2022-10-10 2022-10-10
def tue yes newyork 2022-10-10 2022-10-10
ghi wed yes newyork 2022-10-10 2022-10-10
jkl thu yes newyork 2022-10-10 2022-10-10
有没有什么方法可以使用Linux命令(如sed、awk)来完成此操作?
我试过了,但没有用:
awk 'BEGIN {FS=OFS=","} NR==1{$0="name, space, valid, location, date1, date2"} NR>1{$3=sprintf("\t,%s",$3)}1' values.txt
任何帮助都将不胜感激。谢谢!
1条答案
按热度按时间busg9geu1#
您可以使用此
awk
解决方案:PS:如果你的所有行都以制表符开始,那么在上面的命令中使用
$4
而不是$3
,因为第一列将是空的。