작은 따옴표의 awk 구분 기호를 사용하는 방법은 무엇입니까?

작은 따옴표의 awk 구분 기호를 사용하는 방법은 무엇입니까?

awk를 사용하여 다음과 같은 SQL 출력에서 ​​정보를 가져오고 싶습니다.

(개수(고유 서버클래스)='2')

그리고 이 예에서는 2인 숫자를 추출해야 합니다.

다음과 같은 작업을 수행하고 싶지만 작은따옴표를 이스케이프 처리하는 방법을 알 수 없습니다.

<sqlCommand> | awk 'BEGIN{FS="'"}{print $2}'

awk에서 필드 구분 기호로 문자 그대로 작은따옴표를 어떻게 얻을 수 있나요?

답변1

작은따옴표로 묶인 문자열에 작은따옴표 문자를 삽입하려면 현재 문자열을 끝내고 "'"또는 를 쓰고 \'문자열을 다시 시작하세요.

귀하의 예에서는

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

또는

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

그러나 -F스위치를 사용하여 필드 구분 기호를 지정하면 코드를 더 읽기 쉽게 만들 수 있습니다.

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

관련 정보