İnişe geçen tüm süreçlerin (örneğin çocuklar, büyük çocuklar vb.) Bir listesini almak istiyorum $pid. Bu, karşılaştığım en basit yol.
pstree -p $pid | tr "\n" " " |sed "s/[^0-9]/ /g" |sed "s/\s\s*/ /g"
Tüm azalan işlemlerin tam listesini almak için herhangi bir komut veya daha basit bir yöntem var mı?
'\n'sınırlandırılmış ve ' 'sınırlandırılmış umrumda değil ). Pratik kullanım örneği: a) saf mazoşizmden yazdığım bir daemonizer betiği (özellikle, "dur" işlevinin, bu daemonize edilen sürecin doğduğu her hangi bir işlem ağacı ile ilgilenmesi gerektiği); ve b) zaman aşımına uğrayan sürecin oluşturmayı başardığı her şeyi öldürecek bir zaman aşımı komut dosyası.
kill. Bkz. Unix.stackexchange.com/questions/9480/… , unix.stackexchange.com/questions/50555/…
ps ax -opid,ppid,pgrp,cmdaynı olan birçok işlem olduğunu görüyorum pgrp. (Ayrıca, ben göremiyorum setpgrp: debian kararlı paketlerinde her yerde listelenen programı packages.debian.org/... )