]>
Commit | Line | Data |
---|---|---|
a0c0a00f | 1 | SAVEPWD=$PWD |
d233b485 | 2 | : ${TMPDIR:=/tmp} |
a0c0a00f CR |
3 | cd $TMPDIR || echo "heredoc3.sub: cannot cd to $TMPDIR" >&2 |
4 | ||
ac50fbac CR |
5 | text=$(cat <<EOF |
6 | here is the text | |
7 | EOF) | |
8 | ||
9 | echo = $text = | |
10 | ||
11 | unbalanced=$(cat <<EOF | |
12 | this paren ) is not a problem | |
13 | EOF) | |
14 | ||
15 | echo $unbalanced | |
16 | ||
17 | balanced=$(cat <<EOF | |
18 | these balanced parens ( ) are not a problem | |
19 | EOF) | |
20 | ||
21 | echo $balanced | |
22 | ||
23 | balanced=$(cat <<EOF | |
24 | quoted balanced parens \( ) are not a problem either | |
25 | EOF) | |
26 | ||
27 | echo $balanced | |
28 | ||
29 | (cat <<EOF | |
30 | more text in a subshell | |
31 | EOF | |
32 | ) | |
33 | ||
34 | (cat <<EOF; ) | |
35 | some more text in a different subshell | |
36 | EOF | |
37 | echo end | |
38 | ||
39 | # semi-weird examples posted by Wayne Pollack to austin-group mailing list | |
40 | cat <<-' END' | |
41 | hello | |
42 | END | |
43 | ||
44 | cat <<END | |
45 | hello | |
46 | END\ | |
47 | END | |
48 | END | |
49 | echo end ENDEND | |
50 | ||
51 | cat <<' END ' | |
52 | hello | |
53 | END | |
54 | echo end hello | |
55 | ||
a0c0a00f | 56 | cat <<x*x >/dev/null & touch 'x*x' |
ac50fbac CR |
57 | x star x |
58 | x*x | |
a0c0a00f | 59 | wait $! |
ac50fbac CR |
60 | echo end 'x*x' |
61 | rm 'x*x' | |
62 | ||
63 | cat <<END | |
64 | hello\ | |
65 | END | |
66 | END | |
67 | echo end helloEND | |
68 | ||
69 | cat <<END | |
70 | hello | |
71 | \END | |
72 | END | |
d233b485 CR |
73 | echo -E end 'hello<NL>\END' |
74 | ||
75 | # gprof | |
76 | if [ -n "$GMON_OUT_PREFIX" ]; then | |
77 | mv ${GMON_OUT_PREFIX}.[0-9]* "$SAVEPWD" >/dev/null 2>&1 | |
78 | fi | |
79 | cd "$SAVEPWD" | |
ac50fbac CR |
80 | |
81 | # this has to be last -- results in a syntax error | |
82 | # doesn't currently parse because EOF is not on a line by itself -- should it? | |
83 | (cat <<EOF | |
84 | still more text in a subshell | |
85 | EOF) |