Kadang-kadang terjadi pada saya, bahwa saya menekan CTRL+ Zsecara tidak sengaja dan aplikasi saya menghilang ke belakang. Aku tahu, aku bisa membawanya kembali fg
, jadi itu bukan masalah besar. Tapi saya bertanya-tanya tentang mematikan ini job control
. Dalam seluruh hidup saya, saya tidak dapat mengingat satu contoh ketika saya membutuhkannya, itu hanya tampak bagi saya sebagai peninggalan dari masa lalu.
Apakah ini OK untuk job control
sepenuhnya menonaktifkan ? Atau apakah saya melewatkan sesuatu, dan fitur ini dapat bermanfaat? Bagaimana saya menonaktifkannya di.bashrc
MEMPERBARUI:
Saya sudah mencoba set +m
seperti yang disarankan oleh @Falsenames. Namun, ini hanya berfungsi ketika saya mengetiknya di terminal. Menambahkan set +m
ke saya .bashrc
tidak berpengaruh.
sumber
$-
(daftar opsi aktif) tidak lagi berisim
ketika Anda menempatkanset +m
di Anda~/.bashrc
menunjukkan bahwa Bash sedang mencoba untuk mematikan kontrol pekerjaan, tetapi pada akhirnya tidak melakukannya karena bug - mungkin layak dilaporkan melalui [email protected]Jawaban:
Anda dapat menambahkan yang berikut ini ke dalam baris perintah Anda untuk berhenti menggunakan mode pemantauan.
set + m
Jika Anda benar-benar membutuhkan fungsionalitas ctrl-z nanti, Anda cukup mengetik 'set -m' untuk mengaktifkan pemantauan untuk sesi itu.
Dari man bash . Perhatikan bahwa ini untuk '-m', dengan "+ m" mengganti pengaturan itu untuk menonaktifkan.
Sebagai upaya terakhir, Anda mungkin ingin mengkompilasi versi bash secara manual tanpa tanda "--enable-job-control". Ini adalah panduan instalasi cepat dari GNU. Jika Anda memilih untuk pergi rute ini, JANGAN mengganti / bin / bash kalau-kalau proses latar belakang berjalan melalui kontrol pekerjaan mengharapkan bash. Sebagai gantinya, buatlah /bin/bash.alt atau file lain. Shell default Anda dapat diubah ke yang alternatif ini dengan menjalankan usermod atau mengedit / etc / passwd sebagai root.
sumber
set +m
bekerja di terminal, tetapi ketika saya menambahkannya ke saya.bashrc
, itu tidak berpengaruh..bashrc
.stty susp undef
akan menonaktifkan sinyal suspend yang diprakarsai keyboard untuk sebagian besar program, namun perintah sepertivim
danemacs
yang memiliki binding spesifik Ctrl-Zharus dikonfigurasi ulang secara terpisah.Anda dapat menambahkan perintah stty ke
~/.bash_profile
atau~/.profile
, logout, login lagi.sumber
mc
itu tidak berhasil. Yang pada dasarnya menegaskan apa yang Anda katakan. Apakah tidak ada solusi universal yang berfungsi untuk semua?set +m
bekerja untukmc
, tetapi hanya jika saya mengetiknya di terminal, bukan di.bashrc
atau.profile
.Untuk menjawab bagian pertanyaan ini: Cz /
fg
combo sangat penting untuk alur kerja vim saya. Sebagai contoh, saya lebih memilih Cz>git commit
>fg
menggunakan pembungkus git dari dalam vim.Cz membantu memperlakukan shell sebagai IDE, sesuai dengan prinsip " do one thing ". (Ini bukannya "editor sebagai IDE").
sumber
^Z
benar-benar masih berguna - tetapi itu bahkan lebih berguna ketika terminal bukan jendela, tetapi sebuah kotak di depan Anda. Dan Anda hanya punya satu.Tambahkan
trap "" SIGTSTP
skrip Anda. Ini akan menangkap sinyal dan mengabaikannya.sumber