Misalnya,
#!/bin/bash
while :
do
sl
done
Bagaimana cara menghentikan skrip bash ini?
Jawaban yang Diterima:
Program sl
sengaja mengabaikan SIGINT
, yang dikirim saat Anda menekan Ctrl+C . Jadi, pertama-tama, Anda harus memberi tahu sl
untuk tidak mengabaikan SIGINT
dengan menambahkan -e
argumen.
Jika Anda mencoba ini, Anda akan melihat bahwa Anda dapat menghentikan setiap sl
, tapi mereka masih mengulang. Anda perlu memberi tahu bash
untuk keluar setelah SIGINT
demikian juga. Anda dapat melakukannya dengan menempatkan trap "exit" INT
sebelum pengulangan.
#!/bin/bash
trap "exit" INT
while :
do
sl -e
done
Bagaimana Cara Mengirim Keystrokes (f5) Dari Terminal Ke Program Gui?
Mengapa Shell Interaktif Pada Shell Login Osx Secara Default?