Di bash
I berputar t/csh
shell, yang memperbarui input tty ( stty erase ^H
) di .cshrc, tetapi ketika exit
-ing dan kembali ke bash backspacekunci tidak lagi berfungsi. Ini karena bash menggunakan readline
dan saya perlu mengatur ulang erase ( stty erase ^?
).
Jika saya mengerti trap
dengan benar, sepertinya saya bisa menjebak t / csh keluar dari dalam proses t / csh, dan menjalankan perintah setelah keluar. Namun, preferensi saya adalah agar trapping terjadi di bash, yang idealnya mendeteksi shell dipanggil / keluar dan kemudian menjalankan skrip untuk mengatur ulang konfigurasinya.
Ini lebih disukai karena saya bisa memanggil sejumlah kerang (misalnya dash
,, zsh
), yang mungkin secara tidak sengaja mengubah pengaturan spesifik-bash. Daripada mempertahankan beberapa trap
perintah untuk setiap shell, sepertinya akan lebih baik jika memiliki satu untuk bash.
Apakah pemahaman saya trap
benar? Jika demikian, apakah mungkin untuk bash
mendeteksi keluar shell anak dan kemudian menjalankan skrip?