2010-11-30 77 views
1

我正在使用Ruby 1.8和Linux(Ubuntu和SLAX),我需要寫一個腳本在紅寶石,它發現如果某些特定的USB設備連接到系統和USB端口(0,1 ,2等)。它是在HAL(hal-find-by-capability -capability serial)幫助下完成的,但現在我不能使用這種方法。我試圖讀取/ var/log/messages文件試圖找到USB端口號,但似乎這個號碼可能不會寫入某些系統。我試過的其他事情是檢查/ dev文件夾並搜索ttyUSB#文件,但當新設備連接到USB時,它不會出現在某些系統上。 我將不勝感激任何想法如何做到這一點。找出USB設備是否連接。在Linux的紅寶石

回答

3

lsusb是一個Linux命令,用於顯示您的USB集線器並列出連接到它們的設備。在紅寶石,我相信你可以做這樣的事情:

ls_results = `lsusb` 

你應該能夠解析無論出於何種設備,你要尋找的。

+0

其實我需要找到這個設備以「tty#」形式連接的端口。 lsusb給我的東西類似於 總線007設備001:ID 1d6b:0001 Linux Foundation 1.1根集線器 總線006設備001:ID 1d6b:0001 Linux Foundation 1.1根集線器 總線005設備002:ID 045e:00cb Microsoft Corp.基本光學鼠標v2.0 等,但如何在/ dev中找到相應的tty文件? – lugger1 2010-11-30 19:32:18

0

你有libusb Ruby綁定,允許控制USB設備。