1 |
#!/usr/bin/env bash |
2 |
# |
3 |
# Miscellaneous tests for the command language. |
4 |
|
5 |
#### Command block |
6 |
{ which ls; } |
7 |
## stdout: /bin/ls |
8 |
|
9 |
#### Permission denied |
10 |
touch $TMP/text-file |
11 |
$TMP/text-file |
12 |
## status: 126 |
13 |
|
14 |
#### Not a dir |
15 |
$TMP/not-a-dir/text-file |
16 |
## status: 127 |
17 |
|
18 |
#### Name too long |
19 |
./0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 |
20 |
## status: 127 |
21 |
## OK dash status: 2 |
22 |
## OK bash status: 126 |
23 |
|
24 |
#### External programs don't have _OVM in environment |
25 |
# bug fix for leakage |
26 |
env | grep _OVM |
27 |
echo status=$? |
28 |
## stdout: status=1 |
29 |
|
30 |
#### File with no shebang is executed |
31 |
# most shells execute /bin/sh; bash may execute itself |
32 |
echo 'echo hi' > $TMP/no-shebang |
33 |
chmod +x $TMP/no-shebang |
34 |
$SH -c '$TMP/no-shebang' |
35 |
## stdout: hi |
36 |
## status: 0 |