!["du"는 시스템의 모든 파일을 나열합니까? [폐쇄]](https://linux55.com/image/92522/%22du%22%EB%8A%94%20%EC%8B%9C%EC%8A%A4%ED%85%9C%EC%9D%98%20%EB%AA%A8%EB%93%A0%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EB%82%98%EC%97%B4%ED%95%A9%EB%8B%88%EA%B9%8C%3F%20%5B%ED%8F%90%EC%87%84%5D.png)
du /
나열 할지 여부파일당? 더 좋은 방법이 있나요?
답변1
목표가 파일 시스템의 모든 파일/폴더를 나열하는 것이라면 ls
재귀 옵션을 사용할 수 있습니다-R
# ls -R /
크기를 사용하여 파일을 필터링하려는 경우 다음을 수행하십시오.
# find / -type f -size +10c
위 명령은 -type f
크기가 10바이트(옵션)보다 큰 파일(옵션)을 제공합니다.c
답변2
이 시도:
du -sah /
그 뜻은:
"에스요약하다ㅏ모든 파일과 폴더를 사용하세요.시간사람이 읽을 수 있는 출력"
어떤 경우든 "df" 명령을 사용하는 것이 더 나을 수도 있습니다. 더 빠르고, 아마도 더 관련성이 높은 정보인 장치의 출력을 나열합니다.
df -h
답변3
모든 파일과 디렉터리를 나열하려면 다양한 옵션이 있습니다.
SHW@SHW:/tmp # time du . > /dev/null
real 0m0.046s
user 0m0.000s
sys 0m0.000s
SHW@SHW:/tmp # time find . > /dev/null
real 0m0.003s
user 0m0.000s
sys 0m0.000s
SHW@SHW:/tmp # time ls -aR > /dev/null
real 0m0.003s
user 0m0.004s
sys 0m0.000s
SHW@SHW:/tmp # time tree -a > /dev/null
real 0m0.002s
user 0m0.000s
sys 0m0.000s
SHW@SHW:/tmp # du -sch .
4.1M .
4.1M total
자세한 내용은 각 명령에 대한 매뉴얼 페이지를 읽어보세요.
적어도 위의 예에서는 tree -a
빠른 것 같습니다.
/tmp
디렉터리에는 8개의 파일, 21개의 디렉터리 및 410만 개의 데이터가 포함되어 있습니다.
답변4
du -a /
소유한 모든 디렉터리의 모든 파일을 나열합니다.읽다그리고찾다액세스 권한(상위 디렉터리에 대한 읽기 권한도 있는 경우) 이러한 파일을 나열하는 것이 아니라 해당 파일의 disc sage를 보고할 수 있어야 하기 때문에 검색 권한이 필요합니다 .u
du
GNU 와 같은 일부 구현의 경우 du
다음을 나열합니다.문서실제로디렉토리 항목파일에 여러 개의 하드 링크(해당 파일을 가리키는 여러 디렉터리 항목)가 있는 경우 그 중 하나만 나열됩니다.문서여러 번 나열하지 마십시오.
.
및를 제외한 모든 디렉토리 항목을 나열하려면 다음을 ..
사용할 수 있습니다.
find /
소유한 디렉토리의 항목도 나열됩니다.읽다설마찾다입력하다.
.
및 다음을 포함한 모든 디렉토리 항목에 대해 ..
:
ls -Ra /
(디렉터리 액세스에 대한 동일한 참고 사항).
목적이 주어진 수의 파일과 비교하는 것이라면 df -i
이 접근 방식을 사용 하지만 하나의 파일 시스템으로 제한하려면 du -a
플래그를 추가해야 합니다 . -x
또한 디렉터리 액세스 문제 외에도 일부 프로세스에 의해 아직 열려 있지만 삭제된 파일, 다른 파일 시스템에 의해 차단된 파일도 손실되며 일부 파일 시스템(예: ext4)에는 특수한 문제가 있다는 점도 참고하세요. 예약하다문서(인덱스 노드)는 어떤 디렉터리에도 연결되어 있지 않으므로 최상의 시나리오에서도 df -i /
주어진 숫자와 주어진 숫자 사이의 차이를 발견할 수 있습니다 du -ax /// | grep -c ///
.
GNU도 참고하세요 du
:
du -sx --inodes /
그 수를 확인하세요.