Linux で (USB に接続された) リムーバブル ドライブのリストを取得するにはどうすればよいですか? KDE、GNOME、またはその他の DE ライブラリを使用しても問題ありません。
4921 次
5 に答える
2
何度も繰り返した結果、質問が再びアンロックされました…</p>
最終的に、ここに示されているように、D-Bus インターフェイス経由で UDisk を使用しました。
于 2012-12-07T22:56:29.103 に答える
0
これは私が bash から使用するものです: lsblk --pairs --nodeps | grep 'RM="1"'
出力例: NAME="sda" MAJ:MIN="8:0" RM="1" SIZE="59.5G" RO="0" TYPE="disk" MOUNTPOINT=""
パーティションではなく、デバイスをリストしていることに注意してください。パーティションも表示したい場合は、lsblk --pairs | grep 'RM="1"'
于 2022-01-06T01:41:24.940 に答える
-1
結果を解析しない理由はありlsusb
ますか?このためのモジュールがあると確信していますが、繰り返しになりますが、簡単な方が最適な場合もあります。
私はPythonであなたを助けることはできません、Perlで私はするかもしれません:
#!/usr/bin/env perl
use strict;
use warnings;
my @data;
foreach (`lsusb`) {
next unless /Bus (\S+) Device (\S+): ID (\S+) (.*)/;
push @data, { bus => $1, device => $2, id => $3, info => $4 };
}
use Data::Printer;
p @data;
これは、私のコンピューターでは、
[
[0] {
bus 005,
device 001,
id "1d6b:0001",
info "Linux Foundation 1.1 root hub"
},
[1] {
bus 004,
device 001,
id "1d6b:0001",
info "Linux Foundation 1.1 root hub"
},
[2] {
bus 003,
device 001,
id "1d6b:0001",
info "Linux Foundation 1.1 root hub"
},
[3] {
bus 002,
device 001,
id "1d6b:0001",
info "Linux Foundation 1.1 root hub"
},
[4] {
bus 001,
device 003,
id "0bda:0158",
info "Realtek Semiconductor Corp. USB 2.0 multicard reader"
},
[5] {
bus 001,
device 002,
id "064e:a129",
info "Suyin Corp. "
},
[6] {
bus 001,
device 001,
id "1d6b:0002",
info "Linux Foundation 2.0 root hub"
}
]
Data::Printer
とそのp
機能は、検査目的でのみ人間に優しいオブジェクトダンプであることに注意してください。
于 2012-11-22T00:37:36.427 に答える