AWK: ' '를 필드 구분자로 사용

AWK: ' '를 필드 구분자로 사용

db 덤프에서 해당 줄이 있습니다.

INSERT INTO db1 VALUES ('2', '33', '3', '1975', '3', '5', '1');
INSERT INTO db1 VALUES ('4', '23544', '1', '1987', '3', '1', '1');
INSERT INTO db1 VALUES ('2', '343', '3', '1975', '3', '5', '1');
INSERT INTO db1 VALUES ('4', '21', '1', '1987', '3', '1', '1');

보시다시피 두 번째 필드는 " "를 사용하는 33, 23544,343입니다.

필드를 수치적으로 증가하는 필드(1,2,3..)로 바꾸고 싶습니다 awk. 사용 방법을 알고 있지만 필드 구분 기호로 $2++전달하는 방법을 모르겠습니다 .'

이 구문을 사용하면 오류가 발생합니다.

awk 'BEGIN { FS = "' '" } ; { print $2 }'

답변1

무엇에 대해

awk -F\' '{print $2}'

그냥 탈출해'

출력 필드 구분자를 검색하려면 더 많은 인용이 필요하지만 내부적으로 OFS를 설정하여 수행할 수 있습니다 awk. 귀하의 질문과 함께 정리하면 다음과 같습니다(정리를 위해 @Peter.O에게 큰 감사를 드립니다).

awk -F\' -vOFS=\' '{$2++;print}'

관련 정보