1
我想在關閉超過2000個HTML文件的<\body>
標記之前插入一段JavaScript代碼。這是我嘗試過的。但它沒有完成這項工作。用Perl代替HTML文件的JavaScript代碼
perl -pi -w -e 's/\<\/body\>/\<div id=\"fb-root\"\>\<\/div\>
\<script type=\"text\/javascript\" src=\"https:\/\/connect.facebook.net\/en_US\/all.js\"\>\<\/script\>
\<script type=\"text\/javascript\"\>
FB.init\(\{
appId: \"446059218762070\",
status: true,
cookie: true,
xfbml: true
});
\/\* As of Jan 2012 you need to use \*\/
FB.Canvas.setAutoGrow\(2\);
\<\/script\>
\<\/body\>/g' *.html
我已經做了與perl -pi
其他一些替代腳本,運行良好的像
perl -pi -w -e 's/\<a href=\"index.html\"\>/\<a class=\"top_button\" href=\"index.html\"\>/g' *.html
和
perl -pi -w -e 's/\<link rel=\"STYLESHEET\" type=\"text\/css\" href=\"default.css\"\>/\<link rel=\"STYLESHEET\" type=\"text\/css\" href=\"default.css\"\>
\<script type=\"text\/javascript\" src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/1.4\/jquery.min.js\"\>\<\/script\>
\<script type=\"text\/javascript\" src=\"default.js\"\>\<\/script\>/g' *.html
誰能幫助我?我的單行Perl腳本有什麼問題?
你有沒有試過計算正則表達式的匹配?它可能是一個字母是關閉或什麼 – AJcodez 2012-07-11 16:53:12
好吧,我從HTML文件中的一個HTML文件複製確切的HTML/JavaScript到腳本。這應該是正確的嗎? – Llewellyn 2012-07-11 20:05:55
@WebsiteMount:刪除
我不明白爲什麼它會失敗,但是你不必要地逃避太多人物,以至於任何錯誤都變得不可見。
你是不是在圖案或替換字符串用方括號,所以我建議你用它們來界定替代,就像在黑暗中這
只是一個鏡頭:我不知道您的文件中的
</body>
標記是否大寫?在這種情況下,你的比賽會失敗。我建議你添加i
修飾符(使gi
)只是爲了確保。來源
2012-07-11 18:02:22 Borodin
我剛剛嘗試過,並且出於某種奇怪的原因它說「沒有這樣的文件或目錄」。然後我只看到我給你錯誤的順序。你看我首先添加了這個JavaScript行,它的工作原理是我給的工作,但是我想再次刪除它。而改變的地方,而不是添加行,我現在想刪除它們,它不工作..我會編輯我的帖子,以顯示我剛剛使用的腳本,它仍然無法正常工作。 – Llewellyn 2012-07-11 19:56:15
我得到的腳本運行時輸出錯誤「沒有這樣的文件或目錄」使用'-pi -w -e'而不是'-wpie',但它仍然不能代替HTML/JavaScript – Llewellyn 2012-07-11 20:45:15