![각 파일에 대해 한 열에 데이터가 있는 두 파일을 하나로 병합하는 방법은 무엇입니까? [복사]](https://linux55.com/image/63536/%EA%B0%81%20%ED%8C%8C%EC%9D%BC%EC%97%90%20%EB%8C%80%ED%95%B4%20%ED%95%9C%20%EC%97%B4%EC%97%90%20%EB%8D%B0%EC%9D%B4%ED%84%B0%EA%B0%80%20%EC%9E%88%EB%8A%94%20%EB%91%90%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%ED%95%98%EB%82%98%EB%A1%9C%20%EB%B3%91%ED%95%A9%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
두 개의 파일이 있습니다.
파일 1에는 다음이 포함됩니다.
1
2
3
4
파일 2에는 다음이 포함됩니다.
John
Sam
George
Ken
이 파일들을 결합하여 파일(file3)을 만들고 싶습니다.
1, John
2, Sam
3, George
4, Ken
내 생각은 중첩 루프를 사용하고 각 행에 쉼표를 추가하는 것입니다.
for x in file1
do
echo "$x" >> file3
for y in file2
echo ",$y" >> file3
done
done
사용해야 하는 명령이 있나요? 두 파일의 각 항목에 대해 x와 y를 한 줄에 표시하려면 어떻게 해야 합니까?
답변1
당신은 그것을 사용할 수 있습니다반죽:
$ :|paste -d',' file1 - | paste -d' ' - file2
1, John
2, Sam
3, George
4, Ken
또는:
$ :|paste -d', ' file1 - file2
인수 -d', '
는 각 파일의 내용 사이에 구분 기호로 쉼표와 공백을 사용하도록 지정합니다.
답변2
또 다른 paste
솔루션
paste -d ', ' file1 /dev/null file2
1, John
2, Sam
3, George
4, Ken
답변3
sed 's/$/, /' file1 | paste -d '\0' - file2
답변4
다음을 시도해 볼 수 있습니다.
paste -d, file1 file2 > file3
출력(파일 3):
1,John
2,Sam
3,George
4,Ken