最初の質問
現在、bash スクリプトで HAL を使用して、次のコマンドで特定のデバイスのサイズを取得しています。
HAL_SIZE=$(hal-get-property --udi $UDI --key storage.removable.media_size)
結果 (例): 4110188544/
しかし、この値を GB のような人間が読める形式に変換するにはどうすればよいですか。
4 110 188 544 bytes = 3.82791138 gigabytes
2 番目の質問
for UDI in $(hal-find-by-property --key storage.bus --string usb)
do
HAL_TMP=`hal-get-property --udi $UDI --key storage.removable.media_available`
if [ "$HAL_TMP" = "true" ]; then
HAL_DEV=$(hal-get-property --udi $UDI --key block.device)
HAL_SIZE=$(hal-get-property --udi $UDI --key storage.removable.media_size)
HAL_TYPE=$(hal-get-property --udi $UDI --key storage.drive_type)
ほとんどの Linux ディストリビューションでは HAL がサポートされなくなるため、 udisksの有効期限が切れている人はいますか? udisksを使用することを考えています。
上記のコマンドをどのように適応させる必要がありますが、 halの代わりにudisksを使用しますか?
ありがとう!