Apa arti dari membunuh% 1

13

Saya telah melihat perintah berikut:

$ kill %1

Apa gunanya pernyataan ini?

q0987
sumber
1
"Aku baru saja menyedot satu tahun dari hidupmu"
dmckee --- mantan moderator kucing
Perhatikan juga bahwa zshmemiliki penyelesaian pekerjaan, sehingga menjalankan htop &dan kemudian disown %[TAB]akan melengkapi otomatis ke disown %htop. Saya suka zsh:)
new123456

Jawaban:

18

Secara singkat,

Ini berarti membunuh pekerjaan nomor 1, bukan memproses nomor satu.

Pekerjaan dapat dicantumkan dengan jobsperintah.

Secara lebih luas, ini berhubungan dengan shell mana pun yang Anda gunakan, dan sintaksisnya bisa berbeda dari shell ke shell.

Menggunakan bash shell, pengguna dapat memiliki beberapa proses (pekerjaan) yang dijalankan secara bersamaan, yang proses induknya adalah shell yang Anda gunakan. Dasar-dasar kontrol pekerjaan Google bash

Perintah kill builtin digunakan untuk mengirim sinyal ke salah satu pipa kerja tersebut. Jika sinyal spesifik tidak ditentukan, SIGTERM digunakan, yang biasanya mengakhiri (membunuh) pekerjaan, maka namanya kill. Tetapi sinyal apa pun dapat ditentukan, yang beberapa di antaranya mungkin akan me-reset proses atau menyebabkan perilaku tidak membunuh.

Akhirnya,% 1 adalah salah satu cara (dari banyak!) Untuk menentukan pekerjaan yang Anda inginkan untuk mengirim sinyal. % 1 merujuk pada pekerjaan di atas tumpukan pekerjaan latar belakang.

Anders Abel
sumber
Kecil..tapi itu bukan tumpukan, itu seperti antrian.
tak berujung
6

Ketika Anda melatarbelakangi suatu proses misalnya:

# find / &
[1] ....

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

Sekarang, Di sini ada dua proses yang berjalan di latar belakang dan terhubung ke terminal saat ini. Jika ya: bunuh% 1

yang pertama, perintah 'temukan' di atas akan dihentikan. Seperti yang diceritakan oleh Anders Anda dapat mendaftar proses latar belakang yang sedang berjalan di terminal dan membunuh mereka:

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

# kill %1
Albert
sumber