この関数を作成して、プロセスを部分名で終了し、bash_profileに入れて実行しました。 手動で一度に1つのコマンドを実行すると、すべてが機能します。 しかし、私は関数を呼び出すとき、それは出力に失敗: "違法なプロセスID"macosでプロセスを強制終了するスクリプトbash not working:不正なプロセスID
function killServer() {
pid=$(ps -fe | grep '[p]rocessName' | awk '{print $2}')
if [[ -n $pid ]]; then
kill $pid
else
echo "Does not exist"
fi
}
出力:
kill: illegal process id: i311821
ps -fe | grep '[p]rocessName'
を実行するには与える:
1543721191を1947 1946 0 9:12 AM ?? 0:46.76 ../../jdk/bin/java -server -da -XX:PermSize = 256m Xrunjdwp:transport = dt_socket、address = 8000、suspend = n、server = y -DMonitorDisabled -Xms2048m -Xmx2048m -Dwrapper。 port = 32000 -com.XXX.YYY.server.util.Main -b 0.0.0.0 -c default その理由は何ですか?
'ps -fe | grep '[p] rocessName''をあなたの質問に追加してください。 – Cyrus
1543721191 1947 1946 0 9:12 AM ?? 0:46.76 ../../jdk/bin/java -server -da -XX:PermSize = 256m Xrunjdwp:transport = dt_socket、address = 8000、suspend = n、server = y -DMonitorDisabled -Xms2048m -Xmx2048m -Dwrapper。 port = 32000 -com.XXX.YYY.server.util.Main -b 0.0.0.0 -c default – MoneerOmar
質問に最後のコメントを入れてください –