USB 장치 카테고리와 저장 장치 번호를 확인하는 방법은 무엇입니까?

USB 장치 카테고리와 저장 장치 번호를 확인하는 방법은 무엇입니까?

연결된 USB 장치가 대용량 저장 장치인지 확인하고 그렇다면 저장 장치 번호를 확인하는 스크립트를 작성 중입니다. 또한 여러 개의 연결된 USB 스틱에서도 작동하고 싶습니다.

기본 아이디어는 다음과 같습니다.

일치하는 항목이 있으면 lsusb -t | grep Class=Mass장치 ID를 변수로 저장합니다.

   |__ Port 4: Dev 5, If 0, Class=Mass Storage, Driver=usb-storage, 480M
               ^^^^^

즉, "Dev x" 뒤의 단어가 내 검색과 일치하는 경우 어떻게 얻을 수 있나요?

저는 Linux, bash 또는 정규 표현식에 대한 경험이 많지 않습니다. 이것이 이상하거나 비실용적이라면 다른 제안을 받아들일 수 있습니다.

답변1

awk를 사용할 수 있습니다.

lsusb -t | awk -F '[:,]''/Class=Mass/{print $2}'

Class=Mass구분 기호가 인 를 검색하고 :, ,발견되면 Class=Mass출력의 두 번째 열을 인쇄합니다. 결과는 다음과 같습니다.

Dev 5

관련 정보