bashスクリプトからcontrol+cを送信するには?
2023-08-08 15:40:20
質問
私はbashスクリプトでいくつかの画面を起動し、djangoの
runserver
コマンドを実行しています。プログラム的にそれらすべてを停止できるようにしたいのですが、それには
Control+c
を
runserver
.
bashスクリプトからこれらのキーストロークを送信するにはどうすればよいですか?
どのように解決するのですか?
Ctrl+C
は
SIGINT
シグナルを送信します。
kill -INT <pid>
が送信する
SIGINT
信号も送ります。
# Terminates the program (like Ctrl+C)
kill -INT 888
# Force kill
kill -9 888
仮定の話
888
はプロセスIDです。
注意点として
kill 888
は
SIGTERM
シグナルを送ります。これは少し違いますが、プログラムの停止を要求するものです。ですから、もしあなたが何をしているのか知っているならば(ハンドラをバインドしていない
SIGINT
にバインドされたハンドラがない) 場合は、単純な
kill
で十分です。
スクリプトの中で最後に起動されたコマンドの PID を取得するには
$!
:
# Launch script in background
./my_script.sh &
# Get its PID
PID=$!
# Wait for 2 seconds
sleep 2
# Kill it
kill $PID
関連
-
[解決済み] Bashスクリプトのソースディレクトリをスクリプト自体から取得するにはどうすればよいですか?
-
[解決済み] Bashシェルスクリプトでディレクトリが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] Bashで通常のファイルが存在しないかどうかを判断する方法を教えてください。
-
[解決済み] Bashで文字列変数を連結する方法
-
[解決済み] Bashで文字列が部分文字列を含むかどうかをチェックする方法
-
[解決済み] Bash prints リテラルの改行をエコーする \n
-
[解決済み] Bashスクリプトからプログラムが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み】Bashでファイル名と拡張子を抽出する。
-
[解決済み] bashでファイル(引数)を編集しているコマンドを "その場 "で実行するには?
-
[解決済み] BashやShellスクリプトで関数の前方宣言を行うには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン