Jawaban singkat
Di terminal yang tidak responsif:
- Hit Ctrl+ Z.
- Ketik
bg
dan masukkan.
- Ketik
disown
dan masukkan.
Jawaban panjang
Di terminal yang tidak merespons, tekan Ctrl+ Z, ini akan "menjeda" proses (atau "pekerjaan") dan mengembalikan kontrol konsol kepada Anda. Namun, Anda akan melihat itu gedit
menjadi tidak responsif dan Anda tidak dapat menggunakannya.
Ekstra : jika Anda mau, Anda dapat menjalankan perintah jobs
, Anda akan melihat bahwa itu akan membaca Berhenti untuk gedit
perintah, itu sebabnya Anda tidak dapat menggunakannya.
Untuk membuat pekerjaan berhasil berjalan di latar belakang (yaitu membuat gedit
responsif lagi), jalankan perintah bg
(artinya latar belakang). Anda sekarang dapat menggunakan gedit
, dan pada saat yang sama memiliki prompt untuk diri sendiri.
Extra : sekarang, jika Anda mengeksekusi jobs
, Anda akan melihat bahwa itu akan membaca Running .
Anda dapat mengatasi semua ini sejak awal. Saat Anda meluncurkan gedit
dari terminal, tambahkan sebuah &
ke akhir perintah, jadi kira-kira seperti ini gedit /path/to/file &
. Ini akan diluncurkan gedit
di latar belakang dari tempat pertama (Anda mungkin perlu menekan Enterbeberapa kali untuk mendapatkan kontrol konsol kembali).
Extra : jika Anda mengikuti catatan tambahan ini, Anda mungkin telah memperhatikan bahwa kedua kalinya Anda melakukannya jobs
, Anda bisa melihat bahwa bash menambahkan a &
ke akhir gedit
perintah.
Setelah Anda terbiasa dengan sistem ini, Anda mungkin memperhatikan bahwa jika Anda menutup terminal, gedit juga akan berakhir, bahkan tanpa dialog konfirmasi. Untuk mencegah hal ini terjadi, jalankan disown
, yang akan melepaskan proses gedit dari terminal, menghapusnya dari daftar yang dikembalikan oleh jobs
.
Ketik saja:
gedit <filename-to-edit> &
Ini akan segera mengembalikan prompt perintah kepada Anda.
sumber
Anda dapat menggunakan
nohup
untuk mencegah GUI terpasang ke terminal:Ini akan memungkinkan Anda untuk menutup terminal tempat Anda memulai, tanpa program ditutup.
Anda juga harus memperhatikan, bahwa perintah nohup akan membuat file dengan
stdout
danstderr
dari perintah yang Anda jalankan. Jika Anda ingin mencegahnya, tambahkan&>/dev/null
sebelum&
.sumber
nohup.out
berisi output dari perintah. Ini berguna jika Anda ingin melihat pesan kesalahan. Jika Anda tidak ingin file dibuat, tambahkan pengalihan sebagai berikut:nohup mupdf some.pdf &>/dev/null &
Anda juga dapat menggunakan
disown
perintah. Ini sangat berguna ketika Anda sudah memulai proses yang tidak lagi Anda inginkan melekat pada terminal.Prosedur dasar jika saya ingat dengan benar, adalah sesuatu seperti ini:
Perhatikan bahwa penolakan adalah
bash
spesifik.Posting blog ini menjelaskan kedua metode dengan cukup baik.
Halaman manual untuk ditolak
sumber
firefox & disown
Dari
man gedit
:Jadi, jika Anda menjalankan
gedit
dengan-b
pilihan, itu akan mulai di latar belakang:Selain itu, selanjutnya Anda dapat membuat alias untuk
gedit -b
(lihat di sini cara membuat alias permanen):Mulai sekarang, di masa depan Anda dapat menggunakan
gedit [FILE-NAME]
seperti biasa dan itu akan dimulai di latar belakang.sumber
Ketik saja:
Mengakhiri perintah dengan
&
di bash menjalankan perintah itu di latar belakang. Namun, proses itu masih melekat pada terminal.TanpaTernyata saya salah, ini bukan kasus untuk bash, tapi ini kasus untuk zsh. Anda masih perlu berlaridisown
, jika Anda menutup terminal, gedit akan menutup, bahkan tanpa meminta Anda untuk menyimpan file yang diedit.disown
lepaskan proses latar belakang dari terminal saat ini, sehingga jika Anda menutup terminal, gedit akan terus berjalan seperti biasa.detach
setelah melakukan ctrl- zdanbg
, meskipun, bahkan dalam bash.Anda dapat mengetahui lebih lanjut tentang built-in
jobs
,disown
dan&
metacharacter di halaman manual untukbash
perintah , terutama bagian yang berlabel "job control".sumber
disown
saya dapat menjaga gedit tetap terbuka setelah terminal ditutup. Saya tidak mengerti apa yang Anda katakan tentang "ini bukan kasus untuk bash, tapi ini kasus untuk zsh"Ini mungkin karena Anda membuka gedit melalui terminal. Ketika Anda melakukan ini, Anda melihat output baris perintah yang biasanya disembunyikan jika dimulai melalui GUI. Cara terbaik untuk memperbaikinya adalah dengan membuka jendela terminal baru. Yang lain akan tersedia setelah gedit ditutup. Anda juga dapat menggunakan sakelar yang disarankan pengguna di atas.
sumber