예를 들어, 다음 형식으로 규칙을 작성한다면:
ACTION=="remove", GOTO="serial_end"
SUBSYSTEM!="tty", GOTO="serial_end"
KERNEL=="ttyUSB[0-9]*", RUN+="/<path-to-my-script>/myscript.sh %k"
LABEL="serial_end"
그런 다음 USB 장치를 연결하면 tty
해당 장치의 이름, 즉 장치가 설치된 디렉터리를 얻을 수 있습니다 /dev/ttyUSB*
.
C 프로그램에서 연결을 모니터링하려는 경우 이 이름을 정확히 어떻게 찾을 수 있습니까?
dmesg
장치를 확인하고 NET에서 커널에 의해 생성된 두 개의 포트를 즉시 볼 수 있습니다 /dev
. C에서 이것을 볼 수 있는 API가 있습니까?
라이브러리를 사용해 보았지만 udev
장치의 위치를 정의 bus/usb/...
하지만 드라이버에서 생성한 직렬 포트의 이름이 필요합니다 ttyUSB*
.
udev
PS 아니면 장치가 여기에 있다는 것을 알고 라이브러리 아래에서 이 이름을 찾는 것이 가능합니까 /dev/bus/usb/002/047
?