it-swarm-ja.tech

lsコマンド:最初の行はどういう意味ですか?

私がする時 ls -l私はこれを得ます:

[email protected]:~/Documentos$ ls -l
total 2020
-rwxr-xr-x 1 calico calico    8559 2010-11-16 11:12 a.out
-rwxrw-rw- 1 smt    smt    2050138 2010-10-14 10:40 Java2.pdf
-rwxrw-rw- 1 ocv    ocv        234 2010-11-16 11:11 test.c

しかし、「合計2020」は何を意味するのでしょうか。ファイルが3つしかないので、ファイルやディレクトリの数ではありません。サイズでもないのではないでしょうか。それは何ですか?

30
oli206

1kBブロックの数使用済みディレクトリ内のファイルによって非再帰的に。

使用する ls -lhを使用すると、より意味のある出力が得られます。

25
Juliano

「合計」はls -alで何を意味するか

すばらしい質問です。細部に注意を払いたいということです。例を挙げて説明します。私のホームディレクトリの下/home/el tmpdirというディレクトリがあり、その下にファイルがあります。そのディレクトリに移動してls -al

[email protected] ~/tmpdir $ ls -al
total 20
drwxrwxr-x 4 el users 4096 Dec 21 11:45 .
drwx--x--x 9 el users 4096 Dec 21 11:45 ..
drwxrwxr-x 2 el users 4096 Dec 21 11:45 dirWithFiles
drwxrwxr-x 2 el users 4096 Dec 21 11:44 emptydir
-rw-rw-r-- 1 el users  182 Dec 21 11:45 myfile.txt

「合計20」と書いてあります。これは、「tmpdirはすべてのディレクトリとファイルにディスク上の20Kのスペースを使用する」と変換されます。

-hオプションを使用すると、人間が読める形式で提供するように指示できます。

[email protected] ~/tmpdir $ ls -alh
total 20K
drwxrwxr-x 4 el users 4.0K Dec 21 11:45 .
drwx--x--x 9 el users 4.0K Dec 21 11:45 ..
drwxrwxr-x 2 el users 4.0K Dec 21 11:45 dirWithFiles
drwxrwxr-x 2 el users 4.0K Dec 21 11:44 emptydir
-rw-rw-r-- 1 el users  182 Dec 21 11:45 myfile.txt

何も含まれていないディレクトリも8Kのスペースを占めることに注意してください。私の場合、emptydirには何も含まれていませんが、8Kを使用しているように見えます。

[email protected] ~/tmpdir/emptydir $ ls -al
total 8
drwxrwxr-x 2 el users 4096 Dec 21 11:44 .
drwxrwxr-x 4 el users 4096 Dec 21 11:45 ..

空のディレクトリを追加すると、ディレクトリが4Kを占めることが証明されます。

[email protected]qe ~/tmpdir/emptydir $ ls -alh
total 12K
drwxrwxr-x 3 el users 4.0K Dec 21 11:54 .
drwxrwxr-x 4 el users 4.0K Dec 21 11:45 ..
drwxrwxr-x 2 el users 4.0K Dec 21 11:54 blah

調査するもう1つのコマンドはduです。

[email protected] ~/tmpdir/emptydir $ du
4       ./blah
8       .

また、特定の深さまでファイルサイズを確認できます。

[email protected] ~ $ du -h --max-depth=1
12K     ./.ssh
4.0K    ./my_recycle_bin
8.0K    ./.vim
13G     ./gnuoctbluehost
24K     ./tmpdir
48K     ./.Subversion
152K    ./.cpan
13G     .
[email protected] ~ $
14
Eric Leschinski

誰も-sオプション(?)について言及していません。 man lsから:

-s, --size print the allocated size of each file, in blocks

..したがって、ls -sを使用してリストすると、現在のディレクトリ内の各ディレクトリおよびファイルのブロック数が取得されます。要約すると、total:の上に表示されるls -lとまったく同じ数になります。

追加:ブロックサイズを取得するには this を確認します。

5
sobi3ch