USBパスに基づいてUSB IDをすばやく見つける方法

USBパスに基づいてUSB IDをすばやく見つける方法

/dev/serial/by-idUSB - シリアルケーブルがたくさんあり、パスに基づいて/dev/ttyUSBその値を簡単に見つける方法を探しています。

たとえば、接続されているUSBのIDttyUSB3usb-FTDI_TTL232R-3V3_**FT93XIK5**-if00-port0次のようになります。FT93XIK5デバイスのシリアル番号です。

番号に基づいてIDまたはシリアル番号を取得したいですttyUSB。私は私に次の情報を提供したことを知っていますdmesg

[534200.345749] usb 2-1.1.1: SerialNumber: **FT93XIK5**
[534200.348402] ftdi_sio 2-1.1.1:1.0: FTDI USB Serial Device converter detected
[534200.348425] usb 2-1.1.1: Detected FT232RL
[534200.349040] usb 2-1.1.1: FTDI USB Serial Device converter now attached to **ttyUSB20**

シーケンスを抽出するスクリプトを書くことができますが、より速い方法があるかどうか疑問に思います。

答え1

ディレクトリ内のファイルはへの/dev/serial/by-idリンク/dev/ttyUSB*なので、使用できる標準ツールは次のとおりですfind

find -L /dev/serial/by-id/ -samefile /dev/ttyUSB3
  • -Lシンボリックリンクに従うという意味
  • -samefileとまったく同じinodeを得ることを意味します。/dev/ttyUSB3

関連情報