xmlタグとその値を同じルートタグの下にある別のxmlファイルにコピーする必要があります。ルートタグがない場合は生成します。
以下は入力と出力の例です。
INPUT: string.xml
<resource>
<string name="app_name">MyExampleApp</string>
<string name="profile">My Profile</string>
<string name="messages">My Messages</string>
</resource>
$ command "profile" string.xml string1.xml
OUTPUT: string1.xml
<resource>
<string name="profile">My Profile</string>
</resource>
私は「コマンド」とオプションを探していました。必ずしもこの順序である必要はありません。助けてください。すべてのLinux/Unix/Macコマンドが可能です。
答え1
使用XMLスター、あなたはできます削除string
name
属性が次ではないルートノードの下のすべてのノードprofile
:
$ xml ed -d '/resource/string[@name != "profile"]' string.xml
<?xml version="1.0"?>
<resource>
<string name="profile">My Profile</string>
</resource>
XML宣言行が必要ない場合は、-O
後で追加してください。ed