- PR -

awk構文について

投稿者投稿内容
komey
ベテラン
会議室デビュー日: 2003/11/27
投稿数: 76
投稿日時: 2004-12-08 20:07
引用:

ビギナーさんの書き込み (2004-12-08 18:56) より:

正常終了の時はexit 0でリターンコードを0にしてプログラムを途中で終わらせたいと考えています。


ということですが、どうもSolarisではこの書き方では入力ファイルの全行を処理しないとループを終了できないみたいですね。

while read LINE
・・・
done < ${HTTP_PID_TXT}



exec < ${HTTP_PID_TXT}
while read LINE
・・・
done

こうしてみてください。何がどう違うかは私では正確にお答えできないのですが、上手くいくと思います。
# 私はいつも後者の書き方だったので、ビギナーさんの事象には遭ったことがありませんでした。。。。
コブラ
ぬし
会議室デビュー日: 2003/07/18
投稿数: 1038
お住まい・勤務地: 神奈川
投稿日時: 2004-12-09 02:11
>if [ ${LINE} -eq $pid ]

-eq コンペアしとんやから、 LINE も expr で数値化せなアカンのちゃうのん?
ビギナー
常連さん
会議室デビュー日: 2004/10/14
投稿数: 40
投稿日時: 2004-12-09 13:19
引用:

komeyさんの書き込み (2004-12-08 20:07) より:
# 私はいつも後者の書き方だったので、ビギナーさんの事象には遭ったことがありませんでした。。。。



こんにちは。

komeyさんの方法に書き換えてみましたら、カウンタを使わず成功できました。
ありがとうございます。
わたくしが前者の方法を選んだのは参考書に書いてありました方法をそのまま用いた為です。
以後komeyさんの方法で作成したいと思います。

参考として質問なのですがkomeyさんはSolaris8ではなくどのようなOSをお使いなのでしょうか? 


MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2004-12-09 14:58
別プロセスで exit しているからでは?

件名:while文の中の変数をwhile文の外で使いたいのですが・・・
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=15886&forum=10&start=8
の 最終稿の
4.5.6 ループ文のリダイレクトとパイプ処理
を 読んでみたら。
sh関連では、有名な現象なのでは
ビギナー
常連さん
会議室デビュー日: 2004/10/14
投稿数: 40
投稿日時: 2004-12-09 15:44
引用:

MMXさんの書き込み (2004-12-09 14:58) より:
別プロセスで exit しているからでは?

件名:while文の中の変数をwhile文の外で使いたいのですが・・・
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=15886&forum=10&start=8
の 最終稿の
4.5.6 ループ文のリダイレクトとパイプ処理
を 読んでみたら。
sh関連では、有名な現象なのでは



sh関連では有名な現象なのですね。知りませんでした。リンクをたどってみます。
ありがとうございました。
komey
ベテラン
会議室デビュー日: 2003/11/27
投稿数: 76
投稿日時: 2004-12-09 16:15
引用:

ビギナーさんの書き込み (2004-12-09 13:19) より:

参考として質問なのですがkomeyさんはSolaris8ではなくどのようなOSをお使いなのでしょうか? 



最初の動作チェックはVineLinux2.6r1で行いました。shはbash2.05です。「ビギナー」ということだったので、Linuxのbashかなーと思い、何も考えずにLinuxで試しました。汗

確かに、sh「恐るべし」。。。
ビギナー
常連さん
会議室デビュー日: 2004/10/14
投稿数: 40
投稿日時: 2004-12-09 17:36
引用:

komeyさんの書き込み (2004-12-09 16:15) より:
最初の動作チェックはVineLinux2.6r1で行いました。shはbash2.05です。



OSとshの詳しいバージョンを教えてくださりありがとうございます。
最初の投稿の段階で私の環境を掲示していなかったわたしの不注意です。

今後は最初から環境を提示致します。ありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)