2013-06-12 11 views
51

この質問はGoogleの向こうにあるようですが、回答はすべてシステムプロファイラの使用を指しています。それはうれしいですが、システムプロファイラであなたが得るすべては、このようなものです:OS X用のlsusbと同等のものがあります

  DasKeyboard: 

       Product ID: 0x1919 
       Vendor ID: 0x04d9 (Holtek Semiconductor, Inc.) 
       Version: 1.06 
       Speed: Up to 1.5 Mb/sec 
       Location ID: 0x1d114000/11 
       Current Available (mA): 500 
       Current Required (mA): 100 

      USB2.0 Hub: 

       Product ID: 0x0608 
       Vendor ID: 0x05e3 (Genesys Logic, Inc.) 
       Version: 32.98 
       Speed: Up to 480 Mb/sec 
       Location ID: 0x1d113000/10 
       Current Available (mA): 500 
       Current Required (mA): 100 

       Microsoft Basic Optical Mouse v2.0 : 

        Product ID: 0x00cb 
        Vendor ID: 0x045e (Microsoft Corporation) 
        Version: 1.99 
        Speed: Up to 1.5 Mb/sec 
        Manufacturer: Microsoft 
        Location ID: 0x1d113200/12 
        Current Available (mA): 500 
        Current Required (mA): 100 

あなたが望むすべてのデバイス記述子の束の内容であれば素晴らしいことだが、lsusbはそうずっとあなたにを与えます - インターフェイスとエンドポイント、インターフェイスの関連付け、コンポジットデバイスに関する情報... OS Xでこの情報はどこにありますか?そこにこれを行うツールが必要ですか?

答えて

80

私はsystem_profiler SPUSBDataTypeの構文を忘れて疲れましたので、lsusbの代替案を作成しました。あなたはhereそれを見つけるか、自作でそれをインストールすることができます。ioregについて

brew update && brew tap jlhonora/lsusb && brew install lsusb 
+2

ニーススクリプト!自家製の調合式として追加しますか?これは便利だろう。 – moritz

+1

@moritz https://github.com/mxcl/homebrew/pull/23803 – jlhonora

+0

これは素晴らしいユーティリティですが、それでもlinuxのlsusbが得ることのできる部分のほんの一部です。 linuxでlsusbを使うと、デバイスのコンフィギュレーションディスクリプタの完全な内容を得ることができます。それがなければ、私はこのツールがほんのかわいいプリンタだと思う。 –

4

どのように?出力はプロファイラーよりもはるかに詳細ですが、ちょっと濃密です。

出典:MAC OSXでhttps://lists.macosforge.org/pipermail/macports-users/2008-July/011115.html

+0

@blekenbleuへの私の返答を参照してください。 lsusbは、ioreg/IORegistryExplorerや、単にiokitレジストリを歩くsystem_profilerなどの他のプログラムよりもはるかに多くの情報を持っています。 –

7

、次のコマンドを使用することができます。

system_profiler SPUSBDataType 
+0

system_profilerにはioregと同じ問題があります。カーネルがデバイスにマッチしたカーネルオブジェクトの状態を反映し、デバイス自体は反映しません。私は基本的にすべての構成のすべての構成記述子にあるものと同様に、デバイスの完全なレイアウトを表示するものが欲しいです。 –

48

を、私は通常、それらについての詳細とともに、Mac OS XでUSBデバイスを一覧表示するには、次のコマンドを実行します。

ioregのドキュメントはここにある:

https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man8/ioreg.8.html

+0

ioregについての私の返答を見る –

+0

[Ted Middleton](https://stackoverflow.com/users/134692)によるコメントのコピー:問題は、ioregとIORegistryExplorerがデバイスにマッチしたカーネルオブジェクトを表示することですデバイス自体の詳細ではありません。これは、現在アクティブなもの以外の構成ではインターフェースが表示されず、エンドポイント情報も表示されないことを意味します(これはlsusbからの最も有用な出力です)。 –

0

は、少なくとも10.10.5に、system_profiler SPUSBDataType出力は、新しいUSBデバイスがioreg -p IOUSB -l -w 0はない ながら、中に差し込まれます時に動的に更新 ではありません。

+0

問題は、ioregとIORegistryExplorerがデバイスにマッチしたカーネルオブジェクトを表示し、デバイス自体の詳細ではないことです。これは、現在アクティブなもの以外の構成ではインターフェースが表示されず、エンドポイント情報も表示されないことを意味します(これはlsusbからの最も有用な出力です)。 –

+0

私が望むのは、デバイスのすべてのコンフィギュレーションディスクリプタの内容を表示するツールです。 ioregはこれをしません。lsusbはこれを行います。 –

+0

これは[この回答](https://stackoverflow.com/a/29778245/589259)とどのように違うのですか? –

5

あなたがMacPortsのユーザであれば、あなたは単にあなたがいない場合、これはそれをインストールするには良い機会かもしれませんusbutils

sudo port install usbutils 

をインストールすることができ、それにはいくつかの他の有用なLinuxツール用のポートを持っています。

+0

Ah - ok、私が見るportsファイルでは "depends_lib port:libusb"です。ソースには実際にlibusbが必要なようです。それはそうするだろうと思います。私は本当にマックポートを使用していませんが、私は醸造しています。そして、私はこのためにmacportsをインストールする必要はありません。特に、lsusbをユーザ空間のiokitで簡単に再実装できるようになったときは、特にそうです。 –

+0

これは受け入れられる回答である必要があります。 Howerver、今、このパッケージは依存関係 'usbids'のために壊れています。https://trac.macports.org/ticket/53188 – light2yellow

+0

それは今修正されているようです。 –

0

MacOS Xでは、XcodeデベロッパースイートにUSB Proper.appアプリケーションが含まれています。これは/ Developer/Applications/Utilities /にあります。 USB Proberを使用すると、デバイスとインタフェース記述子を調べることができます。

関連する問題