파일이 두 개 있어요
파일 1:
a
b
c
파일 2:
1
2
3
이제 csv 파일로 병합해야 합니다.
a;1
b;2
c;3
파일이 정말 크기 때문에 두 번째 파일을 사용 cat
하고 처리하지 않는 것이 좋습니다. sed
(더 작은 파일의 경우 스크립트를 사용할 수 있습니다). 어떤 아이디어가 있나요? awk
/ perl
?
답변1
노력하다paste
주문하다:
paste -d';' File1 File2 > File3
답변2
#!/usr/bin/awk -f
{
w[FNR][FILENAME] = $0
}
END {
for (x in w)
print w[x][ARGV[1]] ";" w[x][ARGV[2]]
}
나는 또한 이것을 생각해 냈지만 Awk가 배열을 반복하는 방식으로 인해 실패했습니다.
#!/usr/bin/awk -f
{
w[FNR][FILENAME] = $0
}
END {
for (x in w) {
y = 0
for (z in w[x]) {
printf w[x][z]
printf y ? "\n" : ";"
y = 1
}
}
}