Jari Aalto | cce855b | 1998-04-17 19:52:44 +0000 | [diff] [blame] | 1 | export LC_ALL=C |
| 2 | export LANG=C |
| 3 | |
| 4 | # test out the new $(< filename) code |
| 5 | # it should be exactly equivalent to $(cat filename) |
| 6 | |
| 7 | FILENAME=/tmp/bashtmp.x$$ |
| 8 | |
| 9 | trap 'rm -f $FILENAME' 0 |
| 10 | |
| 11 | cat >$FILENAME << EOF |
| 12 | line 1 |
| 13 | line 2 |
| 14 | line 3 |
| 15 | EOF |
| 16 | |
| 17 | LINES1=$(cat $FILENAME) |
| 18 | LINES2=$(< $FILENAME) |
| 19 | |
| 20 | if [[ $LINES1 != $LINES2 ]]; then |
| 21 | echo 'whoops: $(< filename) failed' |
| 22 | fi |
| 23 | |
| 24 | LINES2=$(< /tmp/bashtmp.x*) |
| 25 | if [[ $LINES1 != $LINES2 ]]; then |
| 26 | echo 'whoops: $(< filename) with glob expansion failed' |
| 27 | fi |
| 28 | |
| 29 | # but the glob expansion in the redirection should fail in posix mode |
| 30 | set -o posix |
| 31 | LINES2=$(< /tmp/bashtmp.x*) |
| 32 | set +o posix |
| 33 | |
| 34 | # now see what happens when we try it with a non-existant file |
| 35 | LINES3=$(< /tmp/redir-notthere) |
| 36 | echo $? |
Chet Ramey | ac50fba | 2014-02-26 09:36:43 -0500 | [diff] [blame] | 37 | |
| 38 | # These were bugs through bash-4.2 |
| 39 | { : "$({xxxxxxxxxxxxxxxxxxxx}</dev/stdin)"; } <<<'hi' |
| 40 | echo ${xxxxxxxxxxxxxxxxxxxx} |
| 41 | |
| 42 | { echo "$(1111111111111111111111</dev/stdin)"; } <<<'hi' |