GNU/Linux >> Linux の 問題 >  >> Linux

pid ファイルによるプロセスの強制終了

cat /var/run/myProcess.pid | sudo xargs kill -9

場合によっては、よりコンパクトになります:

pkill -F /var/run/myProcess.pid

行く方法です。品種に問題がありました:

kill $(cat /var/run/myProcess.pid)
# Or
kill `cat /var/run/myProcess.pid`

Monit が start/stop コマンドに対して行っているように、コマンドを別のルールを使用して解析できる別のものに入れなければならなかったとき。


あなたのデフォルト シェルはダッシュ (debian almquist シェル) ですが、bash 構文を使用しているため、これが発生していると思います。シバン行で bash を次のように指定できます

#!/usr/bin/env bash

または、コメントで admdrew によって提案されたダッシュと bash 互換のバックティック式を使用することもできます

kill -9 `cat /var/run/myProcess.pid`

とにかく、/bin/sh に頼ることはできません


Linux
  1. Bash =〜正規表現とHttps://regex101.com/?

  2. PidからGeditプロセスを強制終了できませんか?

  3. Unix / Linux でプロセスのパスを取得するにはどうすればよいですか

  1. .pid ファイルとは何ですか? また、何が含まれていますか?

  2. Bash でテキスト ファイルをコマンドとして実行する

  3. mysqld_safe pid ファイルからの mysqld /var/run/mysqld/mysqld.pid サーバーの再起動を防止

  1. /var/www/... の Django static_root - collectstatic へのアクセス許可がありません

  2. jenkins パイプラインで bash コマンドを実行する

  3. /dev/shm/ と /tmp/ はいつ使用する必要がありますか?