パーティションサイズとファイルシステムサイズ

パーティションサイズとファイルシステムサイズ

私はC ++プログラムを作成しており、パーティションとhhdのスペース、空きスペース、使用スペースをインポートする必要があります。
システムからこのデータを取得するために使用できるすべてのコマンドとコードと出力の間のすべての違いは非常に混乱しています。
私は次のリンクを読んだ。ディスク使用量を測定する方法はなぜそんなに変わりますか?、役に立ちましたが、実際に私の問題を解決するのには役に立ちませんでした。
とファイルシステムのサイズとパーティションのサイズによって出力間のサイズの違いが発生する理由を理解します。私に必要なものも同じです。しかし、私が知っている限り、パーティションのフルサイズのみが提供されます。 (そうですか?)また、コードで構造体を使用しましたが、出力はdfの出力と非常によく似ています。それでは、パーティションとハードドライブの正確な空きサイズ、使用されたサイズ、および全体のサイズを取得するには何を使用する必要がありますか?lsblkdfdflsblkpartition's sizelsblk
statvfs

答え1

コマンドラインで次のものを使用できます。

lsblk -bo NAME,SIZE,FSTYPE,FSSIZE,FSUSED,FSAVAIL,FSUSE%

ただし、C ++プログラムでは通常、他のコマンドの出力を解析したくありません。情報を直接取得するには、システムコールとライブラリコールを使用する必要があります。

作業に適した要件を見つけることはStack Overflowの領域に近いですが、以下はいくつかのヒントです。

関連情報