|
|
#!/bin/sh |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src |
|
|
print_ver_ du |
|
|
|
|
|
|
|
|
mkdir d || framework_failure_ |
|
|
printf '1\td\n' > exp || framework_failure_ |
|
|
|
|
|
du --inodes d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
touch d/f || framework_failure_ |
|
|
printf '2\td\n' > exp || framework_failure_ |
|
|
|
|
|
du --inodes d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
ln -v d/f d/h || framework_failure_ |
|
|
du --inodes d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
printf '3\td\n' > exp || framework_failure_ |
|
|
du --inodes -l d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
mkdir d/d || framework_failure_ |
|
|
du --inodes -s d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
printf '1\td/d\n2\td\n' > exp || framework_failure_ |
|
|
du --inodes -S d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
printf '1\td/d\n3\td\n' > exp || framework_failure_ |
|
|
du --inodes d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
printf '1\td/d\n1\td/f\n3\td\n' | sort > exp || framework_failure_ |
|
|
du --inodes -a d > out.tmp 2>err || fail=1 |
|
|
sed 's/h$/f/' out.tmp | sort >out || framework_failure_ |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
|
|
|
printf '1\td/d\n1\td/h\n1\td/f\n4\td\n' | sort > exp || framework_failure_ |
|
|
du --inodes -al d > out.tmp 2>err || fail=1 |
|
|
sort <out.tmp >out || framework_failure_ |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
printf '1\td/d\n3\td\n3\ttotal\n' > exp || framework_failure_ |
|
|
du --inodes -c d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
touch d/d/f || framework_failure_ |
|
|
printf '2\td/d\n4\td\n' > exp || framework_failure_ |
|
|
du --inodes d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
rm -rf d || framework_failure_ |
|
|
mkdir d || framework_failure_ |
|
|
seq --format="d/file%g" 1023 | xargs touch || framework_failure_ |
|
|
printf '1.0K\td\n' > exp || framework_failure_ |
|
|
du --inodes -h d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
printf '1.1k\td\n' > exp || framework_failure_ |
|
|
du --inodes --si d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
printf '1024\td\n' > exp || framework_failure_ |
|
|
du --inodes -B10 d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
printf '1024\td\n' > exp || framework_failure_ |
|
|
du --inodes --threshold=1000 d > out 2>err || fail=1 |
|
|
compare exp out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
du --inodes --threshold=-1000 d > out 2>err || fail=1 |
|
|
compare /dev/null out || fail=1 |
|
|
compare /dev/null err || fail=1 |
|
|
|
|
|
|
|
|
du --inodes -b d > out 2>err || fail=1 |
|
|
grep ' ineffective ' err >/dev/null || { fail=1; cat out err; } |
|
|
|
|
|
du --inodes --apparent-size d > out 2>err || fail=1 |
|
|
grep ' ineffective ' err >/dev/null || { fail=1; cat out err; } |
|
|
|
|
|
|
|
|
du --help > out || fail=1 |
|
|
grep ' --inodes ' out >/dev/null || { fail=1; cat out; } |
|
|
Exit $fail |
|
|
|