回答編集履歴
2
回答追記:補足の追加
test
CHANGED
@@ -81,3 +81,37 @@
|
|
81
81
|
done
|
82
82
|
|
83
83
|
```
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
----
|
88
|
+
|
89
|
+
補足
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
bashのマニュアルの```<<'EOF'```該当部は以下です。が文章がわかり辛いので[(Qiita)bashのヒアドキュメントを活用する](http://qiita.com/take4s5i/items/e207cee4fb04385a9952#変数展開コマンド置換)を読んでいただければと思います。
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
> $ man bash
|
98
|
+
|
99
|
+
> ヒアドキュメントの形式を以下に示します:
|
100
|
+
|
101
|
+
>
|
102
|
+
|
103
|
+
> <<[-]word
|
104
|
+
|
105
|
+
> here-document
|
106
|
+
|
107
|
+
> delimiter
|
108
|
+
|
109
|
+
>
|
110
|
+
|
111
|
+
> word に対するパラメータ展開・コマンド置換・算術式展開・パス名展開は全く
|
112
|
+
|
113
|
+
> 行 わ れません。 **word が一部でもクォートされている場合**は、 delimiter は
|
114
|
+
|
115
|
+
> word のクォートをほどいた結果 (クォート文字を削除した結果) となり、
|
116
|
+
|
117
|
+
> **ヒアド キュメントに含まれる行では展開が行われなくなります**。
|
1
回答編集:
test
CHANGED
@@ -40,7 +40,7 @@
|
|
40
40
|
|
41
41
|
|
42
42
|
|
43
|
-
これを解決するには以下のようにしてください。
|
43
|
+
これを解決するには以下のようにしてください。```<<EOF```ではなく```<<'EOF'```
|
44
44
|
|
45
45
|
|
46
46
|
|
@@ -48,7 +48,7 @@
|
|
48
48
|
|
49
49
|
export var=foobar
|
50
50
|
|
51
|
-
bash <<
|
51
|
+
/bin/bash <<'EOF'
|
52
52
|
|
53
53
|
for var in a b c; do
|
54
54
|
|
@@ -57,6 +57,12 @@
|
|
57
57
|
done
|
58
58
|
|
59
59
|
EOF
|
60
|
+
|
61
|
+
a
|
62
|
+
|
63
|
+
b
|
64
|
+
|
65
|
+
c
|
60
66
|
|
61
67
|
```
|
62
68
|
|