Salah satu aplikasi yang saya gunakan di tempat kerja kadang-kadang sekrup dengan bash saya dan jadi saya tidak melihat input saya sendiri. Yaitu
$ echo foo
foo
$
menjadi
$ foo $
Saya salah mencoba menjalankan stty -echo
yang membuat masalah menjadi lebih buruk dan sekarang berhenti menerima perintah bersama-sama yang menempatkan input saya di beberapa negara yang hanya menyebabkan >
muncul setiap kali saya line break dan tidak ada yang lain.
Apa yang harus saya lakukan?
bash
command-line
terminal
Kit Sunde
sumber
sumber
reset
untuk memulai yang baik. Tentu saja Anda tidak bisa masuk sekarang perintah apapun ke dalam sehingga terminal ini dari yang lain satu mencoba sesuatu seperticat >/dev/pts/3
mana3
adalah nomor terminal bermasalah Anda dan kemudian tekan tombol berikut:ESC
c
ENTER
Ctrl-D
.Jawaban:
Obat yang biasa untuk hal-hal seperti ini adalah
The
stty -echo
seharusnya tidak membuat ini lebih buruk, karena itu hanya berubah off bergema dari input, dan Anda sudah memiliki itu.Fakta bahwa Anda mengatakan pengembalian hanya menyebabkan
>
muncul berarti Anda telah memulai sesuatu yang menyebabkan kelanjutan pada baris berikutnya, misalnyaecho '
akan melakukannya karena menunggu penutupan'
untuk mengakhiri string. Hal-hal lain akan menyebabkan ini juga, sepertiif something
; menungguthen ... fi
bagian itu.Anda mungkin bisa menekan ctrl- cpada tahap itu untuk menghentikannya menunggu sisa perintah, kecuali terminal sangat kacau sehingga interupsi juga tidak dihasilkan.
sumber
ctrl + c
danctrl + z
tetapi tampaknya tidak mencapai apa-apa.Selain jawaban @ wurtel (terutama kemungkinan penjelasan
>
masalah),stty echo
adalah kebalikan daristty -echo
, jadi Anda dapat menggunakannya. Anda juga dapat menggunakanreset
, yang biasanya disertai dengan paket ncurses.sumber