Windowsのdir
ディレクトリリストコマンドの最後には、リストされたファイルが占めるスペースの総量を示す行があります。たとえば、現在のディレクトリ内のdir *.exe
すべての.exe
ファイル、サイズ、およびサイズの合計を表示します。dir
bashのエイリアスで同様の機能を使用したいのですが、どうすればいいのかわかりません。
現在、私は持っているalias dir='ls -FaGl'
私に.bash_profile
示して、
drwxr-x---+ 24 mattdmo 4096 Mar 14 16:35 ./
drwxr-x--x. 256 root 12288 Apr 8 21:29 ../
-rw------- 1 mattdmo 13795 Apr 4 17:52 .bash_history
-rw-r--r-- 1 mattdmo 18 May 10 2012 .bash_logout
-rw-r--r-- 1 mattdmo 395 Dec 9 17:33 .bash_profile
-rw-r--r-- 1 mattdmo 176 May 10 2012 .bash_profile~
-rw-r--r-- 1 mattdmo 411 Dec 9 17:33 .bashrc
-rw-r--r-- 1 mattdmo 124 May 10 2012 .bashrc~
drwx------ 2 mattdmo 4096 Mar 24 20:03 bin/
drwxrwxr-x 2 mattdmo 4096 Mar 11 16:29 download/
例えば。この質問から答えを取ります:
dir | awk '{ total += $4 }; END { print total }'
合計はわかりますが、ディレクトリリスト自体は出力されません。これをワンライナーまたはシェルスクリプトに変更して、必要なls
引数を渡しdir
、完全なリストと合計を取得する方法はありますか?たとえばdir -R *.jpg *.tif
、すべてのサブディレクトリでこれらのファイルタイプのリストと合計サイズを取得するために実行したいと思います。理想的には、各サブディレクトリのサイズを取得できれば素晴らしいと思いますが、これは必須ではありません。
ls -lh
が何を印刷しているのかわかりませんが、awk
以下のスクリプトが計算するものや、手作業で合計するものとは必ずしも関連していません。ディレクトリ内のファイルのKB数に近い場合もありますが、割り当てられたサブディレクトリのサイズが有効にならないようです。正確にその数が何であるかの説明に向けて私を指すことができれば私は感謝します
ls -lh
それの内容を計算するディレクトリのサイズの合計が表示されない
ls -lh
助けにならないの?合計を上に印刷します。また、実行du -sh *.exe
して、人間が読める形式でディスク領域の使用情報を取得することもできます。