📄 hard-link
字号:
#!/bin/sh# Ensure that hard-linked files are counted (and listed) only once.# Likewise for excluded directories.# Ensure that hard links _are_ listed twice when using --count-links.if test "$VERBOSE" = yes; then set -x du --versionfi. $srcdir/../envvar-check. $srcdir/../lang-defaultpwd=`pwd`t0=`echo "$0"|sed 's,.*/,,'`.tmp; tmp=$t0/$$trap 'status=$?; cd $pwd; chmod -R u+rwx $t0; rm -rf $t0 && exit $status' 0trap '(exit $?); exit $?' 1 2 13 15framework_failure=0mkdir -p $tmp || framework_failure=1cd $tmp || framework_failure=1mkdir dir dir/sub( cd dir && { echo non-empty > f1; ln f1 f2; echo non-empty > sub/F; } )if test $framework_failure = 1; then echo "$0: failure in testing framework" 1>&2 (exit 1); exit 1fifail=0# Note that for this first test, we transform f1 or f2# (whichever name we find first) to f_. That is necessary because,# depending on the type of file system, du could encounter either of those# two hard-linked files first, thus listing that one and not the other.du -a --exclude=sub dir \ | sed 's/^[0-9][0-9]* //' | sed 's/f[12]/f_/' > out || fail=1echo === >> outdu -a --exclude=sub --count-links dir \ | sed 's/^[0-9][0-9]* //' | sort -r >> out || fail=1cat <<\EOF > expdir/f_dir===dir/f2dir/f1dirEOFcmp out exp || fail=1test $fail = 1 && diff -u out exp 2> /dev/null(exit $fail); exit $fail
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -