파일의 첫 번째 열 앞에 문자열을 추가하는 스크립트

파일의 첫 번째 열 앞에 문자열을 추가하는 스크립트

다음 파일이 있습니다.

ID      firstname        lastname
1       John             Wilkens
2       Andrea           Smith

파일의 각 줄에 ID 필드의 숫자 앞에 "del_"이라는 문자열을 추가하고 싶으므로 출력은 다음과 같습니다.

ID          firstname        lastname
del_1       John             Wilkens
del_2       Andrea           Smith

이 목표를 어떻게 달성할 수 있나요?

답변1

표준을 사용하여 sed동일한 작업을 수행합니다 .

sed '2,$ s/^/del_/' file

s///그러면 두 번째 줄과 파일 끝 사이의 모든 줄(범위 포함)에 바꾸기( )가 적용됩니다 2,$. 교체는 주소가 del_지정된 각 줄의 시작 부분에 문자열을 삽입하기만 하면 됩니다 .

답변2

awk '{print (NR>1 ? "del_" : "") $0}' file

답변3

사용 perl:

perl -lpe '$_ = "del_" . $_ if $. > 1' data

답변4

또 다른 awk변형:

awk 'NR>1{ sub(//, "del_") }1' infile

관련 정보