복잡한 표현식에 대해 루프를 작성하는 방법

복잡한 표현식에 대해 루프를 작성하는 방법

grep "^\s*w" /proc/net/wireless | awk '{ print int($3 * 100 / 70) "%" }' 아래와 같이 올바른 Wi-Fi 신호 아이콘을 인쇄하도록 각 출력 상황을 반복하고 확인하는 스크립트를 만들려고 합니다.

for x in grep "^\s*w" /proc/net/wireless | awk '{ print int($3 * 100 / 70) "%" }';
        do
        case "$(cat $x)" in
                100|9[0-9])     echo "" ;;
                8[0-9]|7[0-9])  echo "" ;;
                6[0-9]|5[0-9])  echo "" ;;
                4[0-9]|3[0-9])  echo "" ;;
                *)              echo "" ;;
        esac
        done 

그러나 Bash는 "|" 근처에서 잘못된 표현식을 반환합니다.

관련 정보