![awk - 사용자 정의 개행 문자/단어를 정의하는 것이 가능합니까?](https://linux55.com/image/200129/awk%20-%20%EC%82%AC%EC%9A%A9%EC%9E%90%20%EC%A0%95%EC%9D%98%20%EA%B0%9C%ED%96%89%20%EB%AC%B8%EC%9E%90%2F%EB%8B%A8%EC%96%B4%EB%A5%BC%20%EC%A0%95%EC%9D%98%ED%95%98%EB%8A%94%20%EA%B2%83%EC%9D%B4%20%EA%B0%80%EB%8A%A5%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
AWK는 입력 데이터를 한 줄씩 읽고 처리합니다. 내 데이터에는 자체 라인 정의가 있습니다. 따라서 정의된 문자나 단어를 줄 끝으로 처리하도록 AWK를 구성하는 것이 가능합니다.
옵션과 마찬가지로 -F
필드 구분자를 정의합니다. 마찬가지로 행 구분 기호도 정의할 수 있습니다.
참고: 가능하다면 grep 및 기타 유사한 Linux 유틸리티에도 동일하게 적용됩니다.
답변1
AWK는 입력 데이터를 한 줄씩 읽고 처리합니다.
보다 정확하게는 awk 읽기 및 프로세스입니다.기록- 기본값기록 구분 기호 RS
정확히 개행 문자입니다.
이 스위치에 -F
해당하는 직접 명령줄 은 없습니다(수정과 동일).필드 구분 기호내부 변수 FS
)이지만 대체 레코드 구분 기호를 직접 수정하여 지정할 수 있습니다 RS
. 이는 일반적으로 시작 블록에서 수행됩니다.
awk 'BEGIN{RS='@'} ... '
-v
또는 변수를 사용하여 명령줄을 통해 옵션을 전달합니다.
awk -v RS='@' ' ... '
GNU Awk 사용자 가이드의 다음 섹션도 참조하세요:
awk의 GNU 구현에만 해당되지만 가이드에서는 동작이 구현에 따라 달라지는 점을 설명합니다. 특히 모든 구현이 정규식 사용을 지원하는 것은 아닙니다 RS
(실제로는POSIX 사양단일 문자 구분 기호만 제공됩니다.