kill%1の意味は何ですか


回答:


18

簡単に言えば、

プロセス番号1ではなく、ジョブ番号1 を強制終了することを意味します。

jobsコマンドでジョブを一覧表示できます。

より広義には、使用しているシェルに関連しており、構文はシェルごとに異なる可能性があります。

bashシェルを使用すると、ユーザーは複数のプロセス(ジョブ)を同時に実行でき、その親プロセスは使用しているシェルです。Google bashジョブコントロールの基本

組み込みのkillコマンドを使用して、これらのジョブパイプラインの1つに信号を送信します。特定のシグナルが指定されていない場合、SIGTERMが使用されます。これは通常、ジョブを終了(キル)するため、名前はkillです。ただし、シグナルを指定できますが、その一部は、プロセスをリセットしたり、強制終了しない動作を引き起こしたりする可能性があります。

最後に、%1は、信号を送信するジョブを指定する1つの方法です(多くの!)。%1は、バックグラウンドジョブのスタックの最上位にあるジョブを参照します。


マイナー..しかし、それはスタックではなく、キューのようなものです。
2015

6

たとえば、プロセスをバックグラウンド化すると、次のようになります。

# find / &
[1] ....

# ls -lr /usr &
[2] ....

ここで、バックグラウンドで実行され、現在のターミナルに接続されている2つのプロセスがあります。行う場合:%1を殺す

上記の最初の「検索」コマンドは終了します。Andersが言ったように、ターミナルで現在実行中のバックグラウンドプロセスを一覧表示して強制終了できます。

# jobs
[1] find / ...
[2] ls -lr ...

# kill %1
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.