Pertanyaan yang diberi tag trap

63
“Trap… INT TERM EXIT” benar-benar diperlukan?

Banyak contoh untuk trapdigunakan trap ... INT TERM EXITuntuk tugas pembersihan. Tetapi apakah benar-benar perlu untuk mendaftar ketiga sigspec? Manual mengatakan: Jika SIGNAL_SPEC EXIT (0) ARG dijalankan saat keluar dari shell. yang saya percaya berlaku apakah skrip selesai secara normal...

30
Perangkap, ERR, dan gema garis kesalahan

Saya mencoba membuat beberapa pelaporan kesalahan menggunakan Perangkap untuk memanggil fungsi pada semua kesalahan: Trap "_func" ERR Apakah mungkin untuk mendapatkan saluran dari mana sinyal ERR dikirim? Shell itu bash. Jika saya melakukan itu, saya bisa membaca dan melaporkan perintah apa yang...

14
Apakah jebakan diwarisi oleh subkulit?

Saya mencoba skrip berikut: #!/bin/bash trap 'echo "touching a file" && touch $FILE' EXIT foo1(){ echo "foo1" } foo(){ echo "foo" export FILE=${FILE:-/tmp/file1} } (foo1) foo Output untuk skrip di atas adalah: [root@usr1 my_tests]# ./test.sh foo1 foo touching a file Namun saya...

13
Bagaimana cara mengatur jebakan dalam fungsi bash?

Saya dapat mengatur trapdalam skrip bash tetapi tidak pada fungsi bash. Misalnya, sourcekode di bawah ini dan jalankan f, sekarang coba Ctrl+ C, itu belum terperangkap! Bagaimana cara mengatur trapfungsi bash? 4 trap ctrl_c INT 5 6 ctrl_c () { 7 echo "** Trapped CTRL-C" 8 } 9 10 11 f...

12
Apakah sinyal 0 pada perintah trap?

Saya mengikuti panduan ini tentang cara mengatur otentikasi SSH tanpa kata sandi dengan ssh-agent. Untuk memulai ssh-agent, penulis merekomendasikan kode berikut dalam .bash_profile: SSHAGENT=/usr/bin/ssh-agent SSHAGENTARGS="-s" if [ -z "$SSH_AUTH_SOCK" -a -x "$SSHAGENT" ]; then eval `$SSHAGENT...

12
Mulai tugas secara diam-diam di latar belakang

Saya tahu bahwa Anda dapat menggunakan ini untuk memulai proses di latar belakang, tanpa mendapatkan pemberitahuan saat proses diletakkan di latar belakang dan ketika dilakukan seperti ini: (perintah &) &> / dev / null Namun ini menghapus opsi untuk menjebak ketika proses selesai (...

12
Trap handling dan subshell implisit dalam skrip shell

Katakanlah Anda memiliki skrip shell yang menjalankan semacam kode pembersihan melalui EXITjebakan, seperti ini: #!/bin/bash mytrap () { echo "It's a trap!" >&2 } trap mytrap exit echo I am at the end of the script. Ini akan, seperti yang diharapkan, dicetak It's a trap!ketika skrip...

10
Mencegah penyebaran SIGINT ke Proses Induk

Mempertimbangkan skenario di mana program Induk (bisa berupa program C ++ atau Skrip Shell) mengeksekusi skrip shell Anak, ketika kami menekan Control + C (atau karakter apa pun yang dikonfigurasikan menjadi karakter INTR) ketika Skrip Shell Anak mengeksekusi, SIGINT dikirim ke semua proses dalam...

8
Subshell standar vs subshell perintah-substitusi

Tolong jelaskan output perangkap ini: $ line(){ echo -------------; echo $BASHPID; } $ trap 'echo bye' EXIT; trap -p; line; (trap -p; line); echo "$(trap -p; line)" trap -- 'echo bye' EXIT trap -- '' SIGTSTP trap -- '' SIGTTIN trap -- '' SIGTTOU ------------- 6176 trap -- '' SIGTSTP trap -- ''...