【Windows】ハードディスクの空き容量を指定のサイズに調整する一行コマンド!fsutilとPowershellを組み合わせてストレージのサイズを減らしてみよう。

Windows

こんにちは!今回はハードディスクの空き容量を指定のサイズに調整する一行コマンドを紹介します!

空き容量を調整するというのは普段あまり行わない操作の一つです。調整とはいっても、残念ながら空き容量を増やすことはこのコマンドではできません。あくまで減らして調整しています。

普通に使っていると空き容量は多ければ多いほど良いというのは定説ですからね。無用に容量を使うことはあまりお勧めできません。

ですが、パソコンを仕事にしている人は、何かのテストだったり、意図して容量を揃えたいシチュエーションはたまにあることだと思います。

今回はそんな場合にサクっと空き容量を指定のサイズに調整するコマンドを紹介していきたいと思います。

やりたいこと

ストレージの容量を指定のサイズにコマンドで簡単に減らす。

スクリプト例

#Powershell
fsutil file createnew c:\dummy.dat ((Get-PSDrive C).free - 15gb)

rem コマンドプロンプト
@powershell -command "fsutil file createnew c:\dummy.dat ((Get-PSDrive C).free - 15gb)"

このコマンドを実行すると、Cドライブ直下に「dummy.dat」というファイルが作成され、ディスクの空き容量が指定のサイズ(15GB)になっていると思います。「dummy.dat」の中身は意味のないデータになっています。

※fsutilはWindows7以降で対応しています。

解説

fsutilを使ったダミーファイルの作成

fsutilはファイルシステムを操作するのに使用するプログラムで、今回使用したのはその中でも「fsutil file createnew」という意味を持たないダミーファイルを作成するコマンドです。

fsutil file createnew [ファイルパス] [ファイルサイズ]

ファイルパスには作成したい場所のファイルパスとファイル名を指定します。ファイルサイズはバイト単位でファイルサイズを指定してあげます。

例えば、「10MB」の「File.dat」を「Dドライブ直下」に作成したい場合は、

fsutil file createnew D:¥File.dat 10485760

こんな感じのコマンドで作成できるでしょう。

※ちなみにコマンドプロンプトだけでは「〇〇GB」のような指定の仕方はできません。計算後の値を使いましょう。10MB=10x1024x1024=10,485,760

Powershellコマンドでディスク容量を取得して調整量を決める

Powershellには「Get-PSDrive」というディスクの情報を取得するコマンドが用意されています。

ドライブレターを指定してあげることで、そのドライブの情報を取りに行きます。
その中に「free」という値(:プロパティ)が存在していて、そこにディスクの空き容量が含まれています。

(Get-PSDrive [ドライブレター]).free

調整後の空き容量は全体の空き容量から、指定のサイズを引き算することで求められます。
まぁ、空き容量から引いた分のファイルが出来上がるので当然ですね。

図で書くとこんな感じ
(Get-PSDrive [ドライブレター]).free - [調整後のディスク容量]

今回は15GBにしましたが、もちろん他の値にしてもOKです。「GB」単位で指定してみましたが、[MB]、[KB]などでも指定できます。

単位付きのサイズ指定

これはおまけみたいなものですが、コマンドプロンプト(黒いコンソール)ではデータの単位をサポートしていません。そのため、「1MB」を表現するには「1048576」と表現しなければいけません。(1x1024x1024)

コマンドプロンプトでは「GB」などの単位で指定はできない

Powershell(青いコンソール)では最初からデータ単位をサポートしていますので、サイズの指定は[GB]や[MB]、[KB]などでも指定できます。

Powershellはそもそも「GB」などの単位を最初からサポートしている

あとがき

今回は空き容量を任意のサイズに調整するコマンドを紹介させていただきました。

調整したサイズを元に戻すときは、作ったダミーファイルを完全に削除することで復活します。
意外とゴミ箱に移しただけにしてしまう人も多いようなので、気を付けてくださいね。

空き容量の調整をしなくちゃいけないシチュエーションはなかなか出てくることが少ないと思うのですが、私の場合はOSやハードディスクの挙動を確かめる際に使っていました。

OSの設計もそうなのですが、購入したコンピュータや導入するソフトウェアの動作を把握する上で「空き容量が極端に少ないときにどんな動きをするのか」は知っておかないとトラブルに発展することがしばしばありました。

メモリを大量に消費するプログラムなどを導入しなければいけない時などは、これでシステム破損が起こることも(めったにないですが)ありました。

そんなテストを行ってみるのにも大変有用ですので、よかったら使ってみてくださいね。

何かのお役に立てれば幸いです。

コメント

Translate »
タイトルとURLをコピーしました