질문이 있습니다. 디스크 사용량이 70%를 넘었다는 것을 어떻게 알 수 있습니까? 그 안에 있는 가장 큰 파일을 찾아서 표시하여 전달을 찾을 수 있습니까?
쉘 스크립트 작성을 도와주세요. 관심을 가져주셔서 감사합니다.
스크립트를 시도했지만 무슨 뜻인지 찾지 못했습니다. 필요한 것은 사용률이 xx%인 파일 시스템에서 가장 큰 파일을 찾는 것뿐입니다. 이것을 하나의 스크립트로 결합할 수 있습니까? 그러면 파일 사용량이 xx%를 초과하면 헤더가 -10인 가장 큰 파일을 찾아서 표시합니까?
나는 스크립트를 사용해 보았습니다.
$ df -Ph | awk '+$5>=10 || $1=="Filesystem"' && du -h | sort -nr | head -10 || echo Fail usage is less from 10%
그러나 디스크 사용량이 xx%를 초과하는 것으로 확인되면 최대 파일 검색이 표시되지 않고 "fileusage less from xx%!"만 표시됩니다.
답변1
첫 번째 부분
df -Ph | awk '+$5>=10 || $1=="Filesystem"'
항상 true를 반환합니다.
if df -Ph | awk '+$5<=10 || $1=="Filesystem" { if ( +$5<=10) exit(1) ; else exit(0) }'
then du -h | sort -nr | head -10
else echo Fail usage is less from 10%
fi
접어서 줄 끝에 넣어서 ';'
줄을 만들 수 있습니다.