Terkadang ketika saya menjalankan killall
perintah dari Terminal, rekan kerja menyarankan atau mengedit skrip saya untuk ditampilkan killall -HUP
.
Apa yang dilakukan -HUP
bagian itu?
macos
terminal
bash
command-line
Danijel-James W
sumber
sumber
Jawaban:
The
-HUP
pilihan adalah sinyal yang dikirim ke proses olehkillall
perintah. Agak sulit dikatakan, tetapi entri yang relevan dalamkillall
manual adalah:Perbedaan antara
TERM
sinyal default yangkillall
mengirim danHUP
sinyal sangat tergantung pada program Anda mengirim sinyal. Pada akhir program, mereka menerima nilai sinyal interupsi yang berbeda. Jadi program dapat menangkap interupsi dan memutuskan, berdasarkan nilainya, apakah mereka harus melakukan satu atau lain hal.The
TERM
sinyal (historis "menghentikan sinyal") biasanya dikirim ke sebuah program untuk meminta penghentian (yang merupakan versi politer dari memaksa penghentian denganKILL
sinyal). Program ini bebas untuk menangkap dan mengabaikanTERM
sinyal. Itu tidak harus berakhir jika tidak mau dan dapat sepenuhnya mengabaikan sinyal ini.The
HUP
sinyal (historis "sinyal hangup") biasanya dikirim ke sebuah program untuk permintaan yang restart dan re-membaca semua konfigurasi dalam proses. Perilaku aktual program tergantung pada implementasi spesifik program. Tidak semua program menangkapHUP
dan mereka tidak diharuskan oleh konvensi atau dogma. Misalnya, server web Apache akan menangkapHUP
sinyal dan membaca kembali semua file konfigurasinya tetapi tidak akan memulai kembali proses apa pun.Jika Anda ingin benar-benar menghentikan proses dan tidak khawatir tentang apakah mereka akan menangkap dan mematuhi sinyal menggunakan
KILL
sinyal. Itu tidak bisa ditangkap atau diabaikan dan mengakibatkan penghentian proses.Untuk ulasan yang baik tentang sinyal POSIX yang tersedia, lihat artikel Wikipedia ini .
sumber
#FAIL
orang - orang yang tidak pernah membaca melewati sakelar. Terima kasih!The
-HUP
adalah "menggantung" sinyal yang dapat memicu sebuah aplikasi untuk berhenti, membaca itu file konfigurasi, dan kemudian mulai lagi. Ini belum tentu lebih baik daripada menggunakannya tanpa.dan
Sama hormatnya. Di OS X Finder akan diluncurkan kembali, tetapi akan membaca kembali file konfiguasinya. Ini mungkin tidak benar-benar terjadi jika aplikasi yang sedang berjalan tidak memiliki
-HUP
fungsi yang dibangun di dalamnya. Seperti poster sebelumnya disebutkan Apache. Bunyinya file konfigurasi, tetapi tidak bisa diluncurkan lagi.sumber