Вот один из циклов awk file1
и использование getline
для чтения из file2
:
$ awk 'BEGIN {
FS=OFS="," # separators
file="file2" # set file2 name
}
{
printf "%s,%s,%s",$1,$2,$3 # output from file1
print (getline < file > 0? OFS $2 OFS$3:"") # and from file2 if records left
}
END { # after processing file1...
while(getline < file) # continue with lines from...
print "","","",$2,$3 # file2 if any left
}' file1
Выведите, если file2
> file1
(> означает число записей):
A,B,C,D,E
1,2,3,4,5
1,2,3,4,5
1,2,3,4,5
,,,4,5
и если file1
> file2
:
A,B,C,D,E
1,2,3,4,5
1,2,3,4,5
1,2,3