Skip to content

doi-t/killpstree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

killpstree

指定したプロセスIDのプロセスとその子孫全てを再帰的にkillするシェル関数とそれを試すためのサンプル

本体のシェル関数

killpstree(){
	local children=`ps --ppid $1 --no-heading | awk '{ print $1 }'`
	for child in $children
	do
		killpstree $child
	done
	kill $1
}

引数にプロセスIDを渡すと、再帰的に対象のプロセスツリーの葉から根に向かってkillをして回る.

サンプル実行

例えば、kill対象のプロセスツリーを意図的に2つ生成してそれをkillする場合.

$ bash mkpstree.bash &
$ bash mkpstree.bash &
$ ps ax --forest
$ bash killpstree.bash "mkpstree.bash"

サンプルスクリプトkillpstree.bash自体は、"プロセス名"を指定して、ヒットしたプロセスのIDを再帰的にkillを行うkillpstreeに渡す.

不用意にプロセス名を指定してしまうと、思わぬプロセスまでkillされるので注意

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages