2016-07-27 2 views
0

私はCSHシェルを使用しています。xmlstarletを複数のファイルに追加して出力を追加するにはどうすればよいですか?

私の現在の作業は、(単一のファイルにxmlstarlet操作を行い、その結果を出力テキストファイルに貼り付けられます)コマンドをxmlstarlet:

xmlstarlet SEL -t -m '// RESULT_STEP' -v「@ time_stamp '-o' | ' -v '@step_name' --nl Report1.xml> /scratch/rys/view_storage/out.txt

これで、複数のファイルReport1.xmlとReport2.xmlでこれを実行する必要があります。上記のような出力ファイル。

xmlstarletでこれを行うことはできますか?

答えて

0

あなたのシェルを使用してください。 bashの例:

{ 
    for xmlfile in Report1.xml Report2.xml 
    do 
    xmlstarlet sel ... "$xmlfile" 
    done 
} > .../out.txt 
+0

こんにちは。ありがとうございました。しかし、これはCSHシェルでは動作しません。 – InsecureNoob

+0

もちろんそれはありません。私が言ったように、それはbashのために働く。 cshのcshの反復メカニズムを使用してください。 –

+0

ありがとうございます。以下は機能しました: foreach xmlfile(ResultReport1.xml ResultReport2.xml) xmlstarlet sel -t -m '// RESULT_STEP' -v '@time_stamp' -o '|' -v '@step_name' --nl "$ xmlfile" >> /scratch/rys/view_storage/outroo2.txt end – InsecureNoob

関連する問題