0
我想在程序xmllint的XPath中使用Bash變量。在程序XPath中使用Bash變量xmllint
下面的工作代碼說明我要實現整體的事情:
functionInformationTagContent="$(echo "${functionInformation}"\
| xmllint --xpath '/functionInformation/description/text()' -\
| xargs -i echo -n "{}")"
以下非工作的代碼說明我要實現的具體的事情:
functionInformationTag="${1}"
functionInformationTagContent="$(echo "${functionInformation}"\
| xmllint --xpath '/functionInformation/<clever code>"${functionInformationTag}"<clever code>/text()' -\
| xargs -i echo -n "{}")"
你可以看到,我希望能夠在XPath參數中使用Bash變量用於泛化。你知道我可以怎樣做到這一點嗎?你能指出我正確的方向嗎?
非常感謝您的幫助!
你有沒有試圖消除周圍的變量引號? – slezica 2013-02-08 18:54:45
我確實已經嘗試從XPath中使用變量functionInformationTag時刪除引號。不幸的是,錯誤是一樣的(無效的表達式和一個箭頭指向違規字符 - 無論是「或$」)。感謝您的幫助。 – d3pd 2013-02-08 19:04:01
有可能我的問題可以概括爲Bash變量的擴展在單引號內,解決問題的方法是在XPath參數中使用雙引號而不是單引號 – d3pd 2013-02-08 19:11:03