![bash: 첫 번째 행에 열 번호를 추가하는 방법](https://linux55.com/image/208464/bash%3A%20%EC%B2%AB%20%EB%B2%88%EC%A7%B8%20%ED%96%89%EC%97%90%20%EC%97%B4%20%EB%B2%88%ED%98%B8%EB%A5%BC%20%EC%B6%94%EA%B0%80%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
다음과 같은 대용량 .txt 파일이 많이 있습니다.
xx yy ... zz
XX YY ... ZZ
각각 다른 수의 열이 있는 헤더 행을 추가하고 싶습니다.
1 2 ... 999
xx yy ... zz
XX YY ... ZZ
열 수가 다르기 때문에 "1\t2\t...."를 직접 입력할 수는 없습니다. 코드에 다음과 같은 내용이 포함되어야 할 것 같습니다 $NF
. 당신의 도움을 주셔서 감사합니다.
답변1
사용 awk
:
awk 'NR==1{for (i=1;i<=NF;i++) printf "%s%s",i,i==NF?ORS:OFS}1' file
탭으로 구분된 파일이 있는 경우 BEGIN{FS=OFS="\t"}
스크립트 시작 부분에 추가하세요.awk
여기에서 확인하세요파일을 제자리에서 편집하는 방법.