두 개의 파일이 있습니다.
파일 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