요약 크기를 바이트 단위로 가져오기 위한 Unix의 "du -sb"와 동일

요약 크기를 바이트 단위로 가져오기 위한 Unix의 "du -sb"와 동일

Linux에서는 GNU를 사용하여 du디렉터리 크기(바이트)를 반복적으로 계산합니다. 다음을 실행할 수 있습니다.

du -sb /etc

du매개변수를 사용할 수 없다는 사실을 바탕으로 -bBSD에 해당하는 구문은 무엇입니까?

답변1

처음 든 생각은...

find $HOME | xargs stat -f%z | awk '{ s+=$1 } END { print s }'

...crawl $HOME, 파일 크기(바이트 단위)를 가져오고 statsum 을 사용합니다 awk.

NetBSD7에서 테스트되었습니다.

답변2

기본적으로 BSD에서는 du블록 수가 512바이트 블록으로 표시되므로 값을 곱할 수 있습니다. Bash의 예는 다음과 같습니다.

echo $(($(du -s /etc | cut -f1) * 512))

블록 크기 변경을 사용할 수 있지만 BLOCKSIZE최소 블록 크기는 512입니다. 변경 후 상황은 다음과 같습니다.

echo $(($(BLOCKSIZE=1024 du -s /etc | cut -f1) * 1024))

관련 정보