0
當我運行的bash如下腳本 -for循環不工作中產生通過bash腳本的HTML文件
#!/bin/bash
items="b.js
a.js
c.js"
startScript='<script src="'
endScript='"></script>'
for item in $items
do
echo $startScript$item$endScript
done
輸出:
<script src="c.js"></script>
<script src="a.js"></script>
<script src="b.js"></script>
我要爲通過生成的HTML文件內循環運行此一個bash腳本。 For循環在這裏不起作用。
#!/bin/bash
items="b.js
a.js
c.js"
startScript='<script src="'
endScript='"></script>'
cat << noEcho
<HTML>
<HEAD>
<TITLE> Bash Script </TITLE>
</HEAD>
<BODY>
for item in $items
do
echo $startScript $item $endScript
done
</BODY>
</HTML>
noEcho
不要儲存在字符串中列出 - 爲此使用數組。 '文件=(b.js a.js c.js)',然後'爲'$ {files [@]}中的項目「; ...' –
首先,'/ bin/sh'並不總是bash。其次,這不起作用?第三,我更喜歡'printf'來'echo'。第四,爲什麼bash而不是perl? –
如果您想將某些代碼的輸出替換爲heredoc正文文本,則需要使用'$()'。 –