backgroundでのread2007/11/27 07:36:29

新人君からシェルスクリプトについて質問を受けた。

バックグラウンドでreadコマンドを使うとループしちゃうんですが・・・。

read コマンドがループするんじゃなくて、ループ中に read を入れてるわけですが、 バックグラウンドで端末からの入力を待つなんて、出来ないだろうと思っていたので試したこともなかった。 ちょいと調べてみてわかったのは

バックグラウンドでttyからの入力を待つと、SIGTTYINを受けて異常終了する

ということくらい。(これも正確には正しくないのかも知れないが・・・。)

ps コマンドなんかだと、バックグラウンドで起動したプロセスでも、 tty は紐づいてるみたいに見えるけど、 やっぱり切り離されてるのかな? (表示上だけ紐づいてるように見える?) よくわからん。

とりあえず、新人君には入力待ちを止めさせました。 特に意味もなかったんで。

何でタダでやらなきゃいけないんだ?2005/08/21 13:13:39

会社の教育資料としてシェルとシェルスクリプトに関する資料を作成しています。
書いても書いても終わらないんですが・・・
シェルの本とか売ってるもんなー。
このまま真面目に書いてたら本当に本一冊分になっちゃうよなー。

何で雀の涙程度の給料しかもらってないのにこんなことしなきゃいけないんだと小一時間・・・・orz

しかもこれ書いても、どうせ誰も見ないんだろう?