停止したプロセスを拒否した後もプロセステーブルに表示され続ける理由を知りたいです。
PING www.google.com (74.125.130.106) 56(84) bytes of data.
64 bytes from 74.125.130.106: icmp_seq=1 ttl=44 time=182 ms
64 bytes from 74.125.130.106: icmp_seq=2 ttl=44 time=209 ms
64 bytes from 74.125.130.106: icmp_seq=3 ttl=44 time=213 ms
64 bytes from 74.125.130.106: icmp_seq=4 ttl=44 time=122 ms
^Z
[1]+ Stopped ping www.google.com
anshul@anshul-Inspiron-N5010:~/Documents/workspace/shell$ jobs -l
[1]+ 10319 Stopped ping www.google.com
anshul@anshul-Inspiron-N5010:~/Documents/workspace/shell$ disown
bash: warning: deleting stopped job 1 with process group 10319
anshul@anshul-Inspiron-N5010:~/Documents/workspace/shell$ ps -ef | grep 10319
anshul 10319 9717 0 23:35 pts/25 00:00:00 ping www.google.com
10319 プロセスが引き続き表示されるのはなぜですか?
ベストアンサー1
いいえ、そのプロセス停止、死ななかった。だからそれはps
まだ現れるでしょう。
を実行すると、ps ax
ステータスがわかりますT
。この状態では、プロセスはSIGCONTを受け取るまで何もせずに実行されます(fg
端末に入力すると、プロセスが停止した場所から再開されることがわかります。次のプロセスはicmp_seq
5になります)。 。
編集する:その部分を忘れてしまいましたdisown
。プロセスが拒否されたため、これ以上表示されませんjobs
。このため、fg
これを行うことはできません。ただし、ステータスps
とともに出力にはまだ存在しますT
。それで、あなたが言ったようにkill -sigcont <PID>
。否定しないでくださいこれは、端末の前景で実行できないことを意味します。