summaryrefslogtreecommitdiff
path: root/shell/hush_test/hush-misc/exec.tests
blob: 01a7f591c840518a0b272ff036936596b4c6c36a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# make sure we have a way of checking these things
[ ! -e /dev/fd ] && exit 1

[ -e /dev/fd/44 ] && exit 1
exec 44>/dev/null
[ -e /dev/fd/44 ] || exit 1
echo pass fd out open

[ -e /dev/fd/55 ] && exit 1
exec 55>&44
[ -e /dev/fd/55 ] || exit 1
echo pass fd out dup

exec 44>&-
[ -e /dev/fd/44 ] && exit 1
echo pass fd out close

[ -e /dev/fd/66 ] && exit 1
exec 66</dev/null
[ -e /dev/fd/66 ] || exit 1
echo pass fd in open

[ -e /dev/fd/77 ] && exit 1
exec 77<&66
[ -e /dev/fd/77 ] || exit 1
echo pass fd in dup

exec 66<&-
[ -e /dev/fd/66 ] && exit 1
echo pass fd in close