iwconfig 인터페이스 모드를 변수에 저장하는 방법

iwconfig 인터페이스 모드를 변수에 저장하는 방법

무선 인터페이스의 모드를 변수에 저장하는 스크립트를 작성해보세요. 즉, iwconfig의 모드 출력을 보유하기 위해 $mode라는 변수를 원합니다. iwconfig가 "Mode:Managed" 모드를 반환하면 "Managed"가 변수 $mode에 할당되고, iwconfig가 "Mode:Monitor"가 반환되면 "Monitor"가 $mode 변수에 할당됩니다. 궁극적인 목표는 이를 수행할 수 있는 echo $mode것이며 "모니터링" 또는 "호스팅"을 반환합니다.

감사해요.

답변1

해결책 sed:

mode=$(iwconfig | sed -n '/Mode:/s/.*Mode://; s/ .*//p')

이것은 다음을 포함하는 라인에서 실행됩니다.모델:, 줄의 시작 부분부터 다음을 포함하여 모든 항목을 삭제합니다.모델:를 누른 다음 첫 번째 공백부터 줄 끝까지 모든 내용을 제거합니다.

-n 옵션은 처리된 행의 인쇄를 억제합니다 sed. 이 p명령은 관심 있는 선을 출력합니다.

그런 다음 명령의 결과가 에 할당됩니다 mode.

확실히 유일한 방법은 아닙니다.

이 솔루션은 특정 iwconfig출력 형식을 가정하며 이는 예고 없이 변경될 수 있습니다. 즉, 위험합니다.

관련 정보