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.

추가: 블록 크기 확인 받기이것.

관련 정보