나는 다음 awk 문을 결합하고 싶습니다:
awk -F'\t' 'NF>1 && $NF!=""' #prints every row with more than two fields
awk '$1 ~ /^[0-9]/' #prints every row starting with a number
awk -F'\t' 'NF==1' #prints every row with one only field
awk '$1 ~ /^[A-Z]/' #prints every row starting with a capital letter
명령문을 얻으려면 대문자로 시작하고 하나의 필드만 포함하는 모든 줄과 두 개 이상의 필드가 있고 각각 정수로 시작하는 모든 줄을 인쇄하십시오.
입력 예:
NAME_1
1
11 11
key 11
KEY KEY
예상 출력:
NAME_1
11 11
답변1
awk
논리를 사용하여 &&
이를 결합 할 수 있으며 ||
(자세히 보기awk 부울 연산자):
$ awk '(NF > 1 && $1 ~ /^[0-9]/) || (NF == 1 && $1 ~ /^[[:upper:]]/)' file
NAME_1
11 11
C 로캘에서만 작동하므로 [[:upper:]]
대문자 일치를 사용해야 합니다 .[A-Z]