파일의 패턴을 기반으로 두 개의 파일로 분할

파일의 패턴을 기반으로 두 개의 파일로 분할

다음 내용이 포함된 파일이 있습니다.

xyz[0]
xyz[1]
xyz[2]
xyz[3]
abc[0]
abc[1]
abc[2]

각 값은 줄 바꿈으로 구분됩니다. 대괄호 안의 숫자가 짝수인지 홀수인지에 따라 두 개의 다른 파일로 분리하고 싶습니다.

답변1

Awk를 사용하여 문자를 분할한 [다음 ]두 번째 필드를 모듈로 분할합니다.

$ awk -F'[][]' '{f = $2%2 ? "odd" : "even"; print > f}' file

$ head odd even
==> odd <==
xyz[1]
xyz[3]
abc[1]

==> even <==
xyz[0]
xyz[2]
abc[0]
abc[2]

관련 정보