헤더 줄 뒤에 문자열이 여러 번 나오는 큰 파일이 있습니다. 예를 들어:
file1
VHBFBJBDSBVVFJBSV
SVJBVHJBVJ
SVKJBVJBNVKVJV
file2
dfhgdgffdghgg
SVKJBVJBNVKVJV
헤더는 동일하게 유지하되 2행 이후의 모든 문자를 한 행으로 병합하고 싶습니다. 누구든지 뭔가를 제안할 수 있나요?
답변1
이 솔루션은 tail
헤더 행을 제거하고 결과를 .tmp 파일에 저장한 다음 paste
행을 병합하기 위한 것입니다. 생성된 파일은 ab.pasted입니다.
tail +2 a > a.tmp
tail +2 b > b.tmp
paste a.tmp b.tmp > ab.pasted
rm a.tmp b.tmp
답변2
귀하의 질문을 올바르게 이해했다면 다음을 원합니다.
{ head -n 1; paste - file2; } < file1 > newfile
다음과 유사한 것을 생성합니다 newfile
.
VHBFBJBDSBVVFJBSV
SVJBVHJBVJ dfhgdgffdghgg
SVKJBVJBNVKVJV SVKJBVJBNVKVJV
위 줄은 탭으로 붙여넣어졌습니다. SPC 문자를 원할 경우 옵션을 추가하고 -d ' '
, paste
구분자를 원치 않을 경우에는-d '\0'