Ctrl-Cが機能しないときにrc.localで起動されたプログラムをどのように終了しますか?

Ctrl-Cが機能しないときにrc.localで起動されたプログラムをどのように終了しますか?

ラズベリーパイ(無限ループ)で起動すると実行され、10秒ごとに写真を撮るプログラムを作成しようとしましたが、間違いを犯しましたが消去CtrlできないことがわかりましたC。脱出する方法はありますか?

(別のワークスペースに移動しようとしましたが、ログインプロンプトが表示されませんでした。)

ベストアンサー1

rc.localでプログラムを起動すると、シェルにログインしてctrl-cと入力して停止することはできません。その理由は、ログインしたシェルでプログラムが起動しないためです。

プログラムのプロセスID()を見つけて、pidこのkillコマンドを使用してプロセスを終了するように指示します。

たとえば、コンソール(ターミナルウィンドウまたはSSH経由でログイン)で次のようにします。

ps aux | grep 'the-name-of-your-progam'

2番目の列の数字はですpid。これを使用してpidプロセスに終了信号を送信します。

kill -TERM [put-your-pid-here]

プロセスは信号を無視してTERMパイプを再実行することを選択できます。psそれでも同じメッセージが表示されたら、pid終了信号を送信します。

kill -KILL [put-your-pid-here]

おすすめ記事