특정 크기 이상의 파일 및 디렉터리 찾기

특정 크기 이상의 파일 및 디렉터리 찾기

du -sch /var/log/ | grep total | grep G현재 1GB 이상의 공간을 소비하는 Find /var/log/ 디렉토리를 사용하고 있습니다 . 완벽하게 작동합니다.

이제 동일한 작업을 수행하도록 조정하는 것을 고려 중이지만 디렉터리가 5GB를 초과하는 경우에만 결과를 표시합니다.

이것이 어떻게 달성될 수 있습니까?

답변1

디렉토리를 확인하고 싶다면 생략해도 됩니다 -c. 크기를 확인하고 싶다면 생략 -h하고 -b바이트 단위로 크기를 가져오는 것이 좋습니다.

awk명령을 사용하면 첫 번째 열이 특정 크기보다 큰 행만 표시할 수 있습니다.

노력하다:

du -bs /var/log | awk '$1 >= 1*(1024*1024*1024)'

및/또는:

du -bs /var/* | awk '$1 >= 1*(1024*1024*1024)'

특정 크기의 파일을 찾으려면 find다음 유틸리티를 사용할 수 있습니다.

find /var/log -type f -size +1G

답변2

du다른 옵션과 함께 명령을 사용할 수 있다는 것을 알았습니다 .

Du-hd 1-t 5G

   -h, --human-readable
          print sizes in human readable format (e.g., 1K 234M 2G)

   -d, --max-depth=N
          print the total for a directory (or file, with --all) only if it is N or fewer levels below the command line argument;  --max-depth=0 is the same as --summarize

   -t, --threshold=SIZE
          exclude entries smaller than SIZE if positive, or entries greater than SIZE if negative

관련 정보