1
私は最後の質問でこのような成功を収めました。下のbashループは、ファイルを繰り返し処理し、ファイルの最後まで実行されるまで繰り返しantにメッセージを送信するように設定されています。私がantを実行しているコマンドを変更してコマンドを単にエコーしても、それは正常に動作します。コマンドの前後にある "echo"と引用符を削除すると、スクリプトを一度実行して正常にループを終了します。私には明らかなように、これはantと、おそらく終了ステータスと関係がありますが、復帰の代わりにループを終了させる理由はわかりません。ところで、常にゼロが返されます。 私のループでantを実行すると、1回のパスの後にループが終了する
echo "Looping through database results and sending to ant..."
# This while loop runs through pendingtxs.result and funnels them to ant
while IFS=, read txid courseid instructorid
do
echo "Beginning substitution of $1 into file..."
sed -e "s/XXXXXXXXXX/$txid/" -e "s/YYYYYYYYYY/$courseid/" -e "s/ZZZZZZZZZZ/$instructorid/" createcourse_notif.template.xml >temp.xml
echo "Substitution complete."
echo "Sending the temp.xml to ant..."
/xncpkgs/ant/bin/ant sendMessage -Dsend.destination=SmsQueue -Dmessage.file=temp.xml
antReturnCode=$?
echo "ANT: Return code is: \""$antReturnCode"\""
echo "Ant is done"
echo "Adding the xml to log.txt for later analysis"
cat temp.xml >> log.txt
echo "Removing temp.xml"
rm temp.xml
echo "Submission of $txid complete."
done < pendingtxs.result
乾杯
、ステファノ
うわー。それはそれだった。私は決してすぐに解決策を得ることはできませんでした!ありがとう! – Stefano
LOL私は答えを受け入れるのに12分待たなければならなかった。あなたのソリューションは速すぎました。それはあなたのすべてのあなたのせいだ;-) – Stefano
うわー、あなたの答えは私が待っていた問題を解決する助けになりました。 –