2024年1月20日土曜日

(PC)powerShellでコンピューターのストレージ利用状況を確認する方法

今回の記事は、powerShellでコンピューターのストレージ利用状況を確認する方法です。

SSDが256GBや512GBもあればそんな気にしなくても良いかも知れませんが、(今はもうほぼ無いかもだけど)64GBのストレージのマシンとかだと、コマンドで頻繁に容量を確認しないと残量不足でヤバい事になるので、コマンドでパッと状況が知れるのは結構良い感じです。

powerShellを管理者モードで開き、STORAGEと入力するだけです。


ストレージの利用状況を表示する方法



#Byte=>GB変換(小数点以下3桁まで)
function ConvertGB([double]$value) {
    $compute = [Math]::Round($value/[Math]::Pow(1024,3),3);
    
    return $compute;
}
#ストレージ状況
function STORAGE() {
    $LINE="-" * 80;
    $STORAGE_SOURCES = GET-PSDRIVE | ?{$_.Provider -match "FileSystem"}
    WRITE-HOST "---ストレージ使用状況---"
    WRITE-HOST $LINE;
    foreach($STORAGE_SOURCE in $STORAGE_SOURCES) {
        $MES = (
            $STORAGE_SOURCE.Name + "ドライブ"+
            " ☆空き(GB)=" +(ConvertGB ($STORAGE_SOURCE.Free)).ToString(".000")+
            " 使用中(GB)=" +(ConvertGB ($STORAGE_SOURCE.Used)).ToString(".000")+
            " 全容量(GB)=" +(ConvertGB ($STORAGE_SOURCE.Used + $STORAGE_SOURCE.Free)).ToString(".000")
        );
        WRITE-HOST $MES;
        if((ConvertGB $STORAGE_SOURCE.Free) -lt 18.0) {
            WRITE-OUTPUT ((" "*10)+"【容量注意】"); #WRITE-HOSTではないので注意
        }
        WRITE-HOST $LINE;
    }
}


↑ちなみに、スクリプトファイルに記述しなくとも、このままコマンドをコピーしてpowerShellのウインドウに貼り付けるだけでも実行可能です。

powerShellの画面は複数のスクリプト入力に対応しています。


↑ちなみに複数行のコマンドをドバッと貼り付けようとすると、Windows 10であれば、無言でパッと貼り付くのですが、Windows 11の最新状態だとこのように警告が出てきます。

間違ってクリップボードの中をドバッと入れてしまった、というミスを回避できるので良い仕様になったなぁと。


↑このように複数行のコマンドも貼り付け可能です。


↑実行は「STORAGE」コマンドだけです。

ROG FLOW Z13で実行しているので、SSDが512GBで、メモリカードドライブが512GBの、合計で1TB分のストレージがあります。

512GBは心底ありがたく、何をインストールしても、ストレージ残量にヒリヒリする必要がないのは心の健康になります。

最近まで、ストレージ64GBで散々サバイバルしてたので、512GBのありがたみが骨身にしみます。

余談ですが、初代ROG PHONEって、数年前のスマートデバイスなのにもう512GB搭載してたっけ...ROG凄すぎ。