ドライブ毎の空き容量を表示する。
小さいけど実用になるGroovyコードのメモ。
その昔、DOSで動く FREE.COMというツールがありました。
各ドライブ事の残量を示してくれました。大きなファイルを書き出したりする前に
最も大きな空きスペースのドライブを確認するときなどに便利でした。
ファイル名は "FREE.COM" などと言う、おいしすぎる名前なので、
もはやネット検索でも、再発見はできそうにない名前ですので、
記憶していたイメージにもとづきGroovyで再開発してみました。
Windows専用になります。
(drive in "C".."Z") という拡張for文がちょっと便利ですね。
動作イメージ
drv [ 空き ]G [ 総計 ]G [Free]% C:\ [ 49.0]G [ 110.7]G [44.3]% D:\ [ 16.0]G [ 99.8]G [16.1]% Z:\ [ 0.3]G [ 0.3]G [100.0]%
ソース
println "drv [ free ]G [ total ]G [free]%" for (drive in "C".."Z") { file = new File("${drive}:/") BigDecimal free = file.getFreeSpace()/100000000 BigDecimal total= file.getTotalSpace()/100000000 if (total >0) { print file BigDecimal vaca = free/total*100 printf (" [%7.1f]G [%7.1f]G [%2.1f]",free,total,vaca) println "%" } }