xmlstarletを使用してxmlファイルを編集しています。私はこれらの2つのコマンドの問題に具体的に直面しています。バッチファイルで特殊文字をエスケープする問題
xml ed -P --update /ns2:ExportManifest/ExportManifestEntity[@path='home/user_name/11.05 CFD Developer commits.xanalyzer']/ExportManifestProperty/EntityMetaData/@name -v 11.05 CFD Developer commits.xanalyzer someFile.xml > someFileNew.xml & move /Y someFileNew.xml someFile.xml
このコマンドは、想定されていません。上記のcoomandを実行した後、ファイルが空であることがわかります。このコマンドを動作させるために脱出する必要があるものはありますか?
2番目にパーセント記号があります。そして、バッチファイルでは、%%
を使ってエスケープすることができます。しかし、うまく動作していないようで、上記と同じ空のファイルがあります。
xml ed -P --update /ns2:ExportManifest/ExportManifestEntity[@path='home/user_name/11.05.DEV CFD commits %%28feature %%26 bug%%29 by Program.xanalyzer']/ExportManifestProperty/EntityMetaData/@name -v 11.05.DEV CFD commits (feature & bug) by Program.xanalyzer someFile.xml > someFileNew.xml & move /Y someFileNew.xml someFile.xml
は、コマンドラインの '(機能&バグ)'の部分を参照してください:アンパサンドは、 '^&'のようにエスケープする必要があります。このコードが一対のかっこの間に置かれている場合は、 ')'のように ')'をエスケープする必要があります... – aschipfl
ありがとう!私はそれを試みます。あなたは最初のコマンドで何かを見つけましたか? – Nikhil
私は(feature&bug)を^(feature ^&bug ^)に置き換えましたが、私は同じ問題に直面しています。 – Nikhil