ちょくちょく忘れるのでメモ。
ubuntuとかでバックグラウンド処理をするときにシェルスクリプトから起動したコマンドを停止するためのサンプル
command &
echo $! > pidを保存するファイル
のようにすると、実行したコマンドのプロセスIDが保存されるので、停止時には
cat pidを保存したファイル | xargs kill -term
とすればOK
もちろん停止時のロジックを応用して、psと組み合わせて今停止しているかどうかのチェックも可能。
cat pidを保存したファイル | xargs ps -o pid -p
とすると稼働中のプロセスIDが表示されるので、これを利用する。