# make sure we have a way of checking these things | |
cd /proc/$$/fd || cd /dev/fd || exit 1 | |
[ -e 44 ] && exit 1 | |
exec 44>/dev/null | |
[ -e 44 ] || exit 1 | |
echo pass fd out open | |
[ -e 55 ] && exit 1 | |
exec 55>&44 | |
[ -e 55 ] || exit 1 | |
echo pass fd out dup | |
exec 44>&- | |
[ -e 44 ] && exit 1 | |
echo pass fd out close | |
[ -e 66 ] && exit 1 | |
exec 66</dev/null | |
[ -e 66 ] || exit 1 | |
echo pass fd in open | |
[ -e 77 ] && exit 1 | |
exec 77<&66 | |
[ -e 77 ] || exit 1 | |
echo pass fd in dup | |
exec 66<&- | |
[ -e 66 ] && exit 1 | |
echo pass fd in close |