두 개의 열이 있는 test라는 파일이 있습니다. 하나는 ID이고 다른 하나는 상태입니다.
파일을 반복하여 상태에 특정 값(예: "ACTIVE")이 있는 ID를 인쇄하고 싶습니다.
cat test | while read line; do templine= $($line | cut -d ' ' -f 2);echo $templine; if [ $templine = 'ACCEPTED' ]; then echo "$templine"; fi done
위의 몇 가지 변형을 시도했지만 작동하지 않는 것 같습니다.
어떤 도움이라도 대단히 감사하겠습니다.
답변1
이는 필드에서 데이터를 조작해야 할 때 종종 적합합니다 awk
.
awk '$2 == "ACTIVE" { print $1 }' test
이는 각 행을 읽고 test
필드로 분할한 다음 $2
두 번째( )가 인지 확인하고 ACTIVE
, 그렇다면 첫 번째 필드를 인쇄합니다.