0

ツールを実行するシェルスクリプトがあります。

私が欲しいのは、このシェルスクリプトの終了コードを.XMLファイルに書き込む必要があるということです。

私がこれまでにしたこと

# command1
# command2    
echo "<status>" > /home/buser/ABC/status.xml   // Writing into XML    
cp2foss -f ABC -q all /srv/foss/$archive_file2 --user foss --password foss; 
echo $? >>  /home/buser/ABC/status.xml   /// Wrting exit code into XML
echo "</status>" >> /home/buser/ABC/status.xml

それは完璧に機能しますが、私はそれが良いコーシングの習慣だとは思いません。

このような違反なしにXMLファイルに終了コードを書き込むにはどうすればよいですか?

4

3 に答える 3

3

どうですか

# command1
# command2    
cp2foss -f ABC -q......
echo "<status>$?</status>" > path/to/status.xml
于 2013-02-15T13:04:56.323 に答える
1

上記のコードには違反はありませんが、次のように書くことができます。

cp2foss -f ABC -q all /srv/foss/$archive_file2 --user foss --password foss
printf '<status>%d</status>\n' "$?" > /home/buser/ABC/status.xml
于 2013-02-15T13:02:35.213 に答える
0

このように書いたほうがすっきりしていて理解しやすいので、あなたはそれを好むかもしれません。

{ 
    echo "<status>" 
    cp2foss -f ABC -q all /srv/foss/$archive_file2 --user foss --password foss;
    echo $? 
    echo "</status>" 
} > /home/buser/ABC/status.xml   # Writing into XML
于 2013-02-15T13:46:53.453 に答える