ncduなどのファイル内ディスク使用量

ncduなどのファイル内ディスク使用量

私はこの製品の忠実なユーザーですNCDUディレクトリのスペース使用量を決定するユーティリティです。

ただし、バックアップするフォルダとバックアップしないフォルダを選択しようとすると、バックアップは圧縮され(.tar.xzアーカイブに圧縮されますが、.tar.gzは同じ結果を生成すると思います)、ユースケースがあります。結果は私の考えと一致します)。したがって、直感的に、私は圧縮された大きなファイル(電子メールアーカイブなど)にはあまり興味がなく、比較的小さいがまったく圧縮できないファイル(JPG画像など)には興味があります。実際の圧縮されていないサイズではなく、圧縮されたサイズでソートされたファイルとフォルダを表示したいと思います。

自然な解決策は、すべてのファイルを圧縮してからncduこのようなツールを使用することです。ファイルにフォルダがアーカイブ内のスペースをどのように占めるかを教えてください。

そのようなユーティリティはありますか?

私はGUIプログラムに満足しています(テキストベースのプログラムが好きですが)。また、他の圧縮アルゴリズムと連携する方法にも満足しています。なぜなら、このプログラムはまだ有用な結果を生成すると考えているからです。

答え1

自分で使ってもいいncdu

圧縮されていないファイルのサイズを表示します。
興味があると言うと(つまり、圧縮できないファイルが多い場合)、必要なものが何であるかをよく反映する必要があります。


ファイルサイズの作成アクセシビリティncdu、彼らは必要ですファイルシステムで。したがって、アーカイブをファイルシステムとしてマウントする必要があります。

私たちはメルトダウンユーザースペースファイルシステム実装する、archivemount:

ヒューズファイルシステムをインストールします。

sudo apt-get install archivemount

mkdirディレクトリにmountアーカイブを挿入し、次の手順を実行します。cdncdu

$ mkdir bash-4.3-mount
$ archivemount bash-4.3.tar.gz bash-4.3-mount
$ cd bash-4.3-mount
$ ncdu


これでncdu正常に使用できます。

ncdu 1.10 ~ Use the arrow keys to navigate, press ? for help                     
--- /tmp/archivedutest/bash-4.3-mount/bash-4.3/lib ----------------
                        /..                                                      
    1.2MiB [##########] /readline
  343.0KiB [##        ] /sh
  316.5KiB [##        ] /intl
  104.5KiB [          ] /glob
   97.0KiB [          ] /malloc
   32.0KiB [          ] /termcap
   22.0KiB [          ] /tilde

 Total disk usage:   2.1MiB  Apparent size:   2.0MiB  Items: 251                 



実際に興味があるのは、圧縮されていないサイズではなく、ファイルの圧縮サイズです。実際のアーカイブで、どのファイルが最も多くのスペースを占有しているかを確認したいと思います。

厳密に言えば、アーカイブは完全に圧縮されているので、これは不可能です。個々のファイルには「圧縮サイズ」はありません。

したがって、単一ファイルの圧縮サイズはおおよそ推定できます。
おおよそのサイズは圧縮ファイルのみのサイズです。
もう1つは、すべてのファイルが同じ割合で圧縮されていると仮定すると、圧縮サイズの一部です。もちろん他の方法もあります。

最初は大丈夫だったようでした。これを達成するために、実際に個々のファイルを解凍して再圧縮する方法がないので、そうしない理由はなく、ファイルシステムに解凍してファイルにncduを使用します。

関連情報