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

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

これを行うと、ls -l次のような結果が得られます。

calico@A000505:~/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つしかないので、ファイルの数やディレクトリの数でもなく、サイズでもないようです。だからそれは何ですか?

答え1

1kBブロック数使用される非再帰的にディレクトリ内のファイルを調べます。

ls -lhより意味のある結果を得るために使用されます。

答え2

ls -alの「全体」とはどういう意味ですか?

良い質問です。細部に注意を払いたいという意味です。たとえば、説明します。私のホームディレクトリには/home/eltmpdirというディレクトリがあり、その下にファイルがあります。そのディレクトリに切り替えて実行します。ls -al

el@angeliqe ~/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オプションを使用すると、人間に読める形式で提供するように指示できます。

el@angeliqe ~/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を使用しているとマークされています。

el@angeliqe ~/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を占有していることを証明するには、空のディレクトリを追加します。

el@angeliqe ~/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

調査する別のコマンドは次のとおりですdu

el@angeliqe ~/tmpdir/emptydir $ du
4       ./blah
8       .

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

el@angeliqe ~ $ du -h --max-depth=1
12K     ./.ssh
4.0K    ./my_recycle_bin
8.0K    ./.vim
13G     ./gnuoctbluehost
24K     ./tmpdir
48K     ./.subversion
152K    ./.cpan
13G     .
el@angeliqe ~ $

答え3

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

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

..それでリストを作成すると、ls -s現在のディレクトリの各ディレクトリとファイルのブロック数を取得します。合計すると、total:上部に見えるものと同じ数字が得られますls -l

追加:ブロックサイズを確認するこれ

関連情報