でXML属性の追加:は、私は次のような形式のXMLデータを持つバッシュ
<string name="app_name">my App</string>
<string name="yes">Yes</string>
<string name="no">No</string>
<string name="done">Done</string>
私はこのような何かにXMLを変換するためのbashスクリプトを記述しようとしている:
<string comment="for more see http://www.web.com/test/app_name" name="app_name">my App</string>
<string comment="for more see http://www.web.com/test/yes" name="yes">Yes</string>
私はいくつかの検索をしました。ここまで私が見つけたものがあります。
コードは以下の交換を行っているが、すべての要素です:
sed -i 's/<string/<string comment=\"for more see http:\/\/www\.web\.com\/test\/\" /g' string.xml
そして、この表現はname
属性をフェッチ:
Sname=$(sed '/name/s/\(.*name=\)\(.*\)/\2/' string.xml|awk -F\" '{print $2}')
しかし、私はそれらをマージする方法は考えています。
やあ、完璧なソリューションのおかげで、私はxmlstarletするXMLを変更し、それが魅力のように働いています。可能であれば、学習のためにそれがどのように動作するか、パラメータと説明を説明できますか? – user2299735
@ user2299735、いくつかの追加情報が追加されました。あなたの問題が解決したと思ったら、答えを受け入れてください。 –