Pertanyaan Bagaimana cara membersihkan terminal?


Saya bisa mengeluarkan clear perintah atau tekan Ctrl + L untuk menghapus terminal Ubuntu saat ini, tetapi ini hanya menggeser output sebelumnya ke atas dan jika Anda menggunakan gulir mouse atau PgUP dan PgDown kunci sulit untuk membedakan di mana output dari perintah sebelumnya berakhir dan output dari perintah saat ini dimulai.

Apakah ada cara untuk melakukannya sangat kosongkan terminal sehingga saya tidak akan melihat hasil perintah sebelumnya?


321
2018-02-06 21:51


asal


Tekan Ctrl + L dua kali dan kamu menjadi kosong! - Pandya


Jawaban:


Ya, perintah yang Anda cari adalah

reset

Berlawanan dengan clear, atau Ctrl+L, reset akan benar-benar sepenuhnya menginisialisasi ulang terminal, bukan hanya membersihkan layar. Namun, itu tidak akan kembali instantiate shell (bash). Itu berarti bash negara sama seperti sebelumnya, sama seperti Anda hanya membersihkan layar.

Seperti yang @Wallacoloo sebutkan di komentar, perintah ini harus melakukan hal yang sama lebih cepat:

tput reset

Dari jawaban lainnya:

  • Anda dapat mengatur Pintasan Keyboard untuk reset terminal, sebagai dijelaskan oleh towolf.

  • Jika Anda sedang berlari Kubuntu, dan terminal Anda adalah Konsole, Anda harus pergi ke Edit → Hapus riwayat, sejak reset tidak bekerja dengan cara yang sama di sana, seperti catatan UncleZeiv.


391
2018-02-06 21:55



Mungkin tidak masalah bagi sebagian besar pengguna, tetapi perilaku reset tergantung pada terminal. - cthom06
Secara pribadi saya tidak keberatan bahwa ada sesuatu yang tersisa "di atas" di sepanjang scroller ketika saya memukul ^L. Saya tidak melihatnya (itu yang saya inginkan!), Saya tidak merasakannya, dan jika tiba-tiba saya mau perlu untuk mengembalikan apa yang ada di sana - tidak masalah. reset Sebaliknya adalah alat yang jauh lebih sulit - saya akan menggunakannya ketika ada yang salah dengan terminal - seperti, ketika urutan keluar yang aneh secara tidak sengaja merusak tampilan sama sekali. - ulidtko
@ulidtko: itu penting ketika Anda menjalankan sesi program berturut-turut dengan berton-ton output. Jika Anda menggulir kembali, mudah untuk bingung tentang eksekusi mana yang mencetak sesuatu. Saya tahu betul bahwa solusi yang lebih canggih dapat digunakan dalam kasus ini, tetapi meskipun demikian itu adalah skenario yang cukup sering terjadi dalam sesi debugging cepat & kotor. - UncleZeiv
@UncleZeiv jangkar cepat berwarna biasanya membantu saya menemukan tempat yang dibutuhkan dengan cepat. Padahal ini semua hanyalah kebiasaan. - ulidtko
Ada juga tput reset yang terlihat melakukan hal yang sama, tetapi selesai secara instan (sedangkan reset bisa memakan waktu hingga sekitar 2 detik sebelum prompt muncul kembali). - Ponkadoodle


Saya mencari ini untuk sementara dan saya menemukan beberapa jenius yang memposting ini:

clear && printf '\e[3J'

Menghapus seluruh buffer layar, sangat bersih. Bekerja pada OS X dan percaya itu bekerja dengan baik pada kebanyakan terminal nix *.

Untuk penasaran, bagian ini '\e[3J' adalah perintah melarikan diri terminal.


76
2018-05-29 05:51



Hmm, bekerja di xterm, Konsole dan Linux VT, tetapi tidak di gnome-terminal ... - Ruslan
Terima kasih, itu sangat berguna! Apa yang terjadi printf '\e[3J' berarti? Bagaimana cara membersihkan buffer? - Filip Spiridonov
Great ditemukan! Dan bagi mereka yang ingin ulang gaya Bash di mac: nano ~/.bashrc dan tambahkan alias reset="clear && printf '\e[3J'" - Michael Deal
aliasing hati-hati reset - Itu lebih dari sekadar membersihkan terminal. misalnya, jika Anda secara tidak sengaja mencetak file biner dengan sampah acak yang merusak terminal (mis. menonaktifkan gema karakter yang diketik), reset biasanya dapat memperbaikinya. tentu saja aliasing baik-baik saja selama Anda tahu caranya \override perintah alias-bayangan. - RubyTuesdayDONO
Ini adalah satu-satunya jawaban yang berfungsi untuk menghapus scrollback Putty ketika mengakses beberapa SSH melalui Winders. - dhaupin


Anda juga dapat menetapkan pintasan di gnome-terminal dengan pergi ke Edit → Pintasan Keyboard. saya menggunakanBergeser+Ctrl+Alt+C.

reset and clear shortcut


37
2018-02-08 22:46



+1. Saya selalu memiliki Menubar yang tersembunyi; jadi bahkan setelah bertahun-tahun menggunakan gnome, saya tidak pernah berpikir untuk mencari ini. Terima kasih :-) - Stefano Palazzo♦
"Reset" tidak melakukan apa pun untuk saya, dan "Reset dan Clear" menghapus semuanya tetapi tidak menampilkan prompt. Tak satu pun dari entri menu ini berperilaku seperti perintah "reset" dari terminal. - Hibou57
Seperti yang dikatakan @ Hibou57, pintas keyboard saya untuk "Reset" tampaknya tidak melakukan apa-apa. Apakah fungsi ini rusak pada 14.04? - Michael Martin-Smucker
“Apakah fungsi ini rusak pada 14.04?”: Ini sama dengan 12.04. - Hibou57
@ Hibou57 "Reset dan Clear" tidak diharapkan untuk menampilkan kembali prompt, tetapi jika Anda menekan Enter setelah itu harus menampilkan kembali prompt. Apakah itu berhasil untuk Anda? - Don Hatch


jalankan perintah ini:

reset

Ini memiliki efek yang sama dengan meluncurkan terminal baru.


15
2018-02-06 21:55



Saat menggunakan dempul, setelah berlari reset, Saya masih bisa menggulir ke atas dan melihat barang-barang sebelumnya. Apakah ini masalah dengan PuTTY daripada reset? - Svish
@Sitush - itu hanya masalah atau keputusan penerapan dempul. - belacqua
@jgbelacqua, Deal :) - Svish


Cross posting jawaban saya dari stackoverflow.

Gunakan perintah berikut untuk melakukan layar yang jelas, bukan hanya menambahkan baris baru ...

printf "\033c"

ya itu 'printf' pada prompt bash.

Anda mungkin ingin mendefinisikan alias ...

alias cls='printf "\033c"'

Penjelasan

\033 == \x1B == 27 == ESC

Jadi ini menjadi <ESC>c yang merupakan kode escape VT100 untuk mereset terminal. Sini adalah beberapa informasi lebih lanjut tentang kode melarikan diri terminal.

Edit

Berikut beberapa cara lain untuk melakukannya ...

printf "\ec" #\e is ESC in bash
echo -en "\ec" #thanks @Jonathon Reinhart.
# -e    Enable interpretation of of backslash escapes
# -n    Do not output a new line

KDE

Di atas tidak berfungsi pada konsol KDE (disebut Konsole) tetapi ada harapan! Gunakan urutan perintah berikut untuk mengosongkan layar dan buffer gulir kembali ...

clear && echo -en "\e[3J"

Atau mungkin menggunakan alias berikut di KDE ...

alias cls='clear && echo -en "\e[3J"'

Saya mendapat perintah gulir-kembali kliring dari sini.


8
2017-10-13 08:08





Yah itu sangat tergantung, jika Anda menggunakan Konsole misalnya bahkan reset tidak mencegah Anda menggulir melewati baris pertama. Dalam hal ini Anda harus menggunakan beberapa fitur dari terminal tertentu yang Anda gunakan. Untuk Konsole, itu Edit > Clear History.


5
2018-02-07 16:27





Favorit saya adalah printf "\ec". Ini juga bisa printf "\033c" atau printf "\x1bc". Itu adalah urutan escape ansi yang secara ajaib membersihkan layar dan buffer untuk output terminal (untuk kebanyakan terminal standar yang saya kerjakan sepertinya - saya tahu ini berfungsi seperti gnome-terminal, terminator, xterm, dll. Pada Ubuntu-like Linux)

Saya tahu ini bekerja di Linux Mint dan Ubuntu 14.04, jadi saya tidak tahu mengapa orang menambahkan dan menyiapkan hal-hal seperti clear && echo -ne "\033c. printf "\ec" selalu berhasil untukku.

Selain itu, di saya .bashrc Saya memiliki ikatan seperti ini:

bind -x '"\C-t": printf "\ec"';

Sekarang saya tekan ctrlt sepanjang waktu.


5
2018-05-01 09:32



Apakah Anda tahu bagaimana cara membuat pemetaan menggunakan kunci Windows? Potongan ini benar-benar hebat, bekerja persis seperti Command-K di mac. Terima kasih. - Niloct
@Niloct Anda dapat melihat apakah terminal mendukungnya xev (ketik saja xev di terminal di dalam sesi-x). Dari apa yang bisa saya katakan, urxvt tidak mendukungnya; sementara saya tidak mencoba dalam tty, saya yakin itu tidak akan didukung. Saya juga meragukan xterm atau gnome-terminal akan mendukung ini. Ini rumit dengan ansi-pelarian. Bersulang dan maaf untuk jawaban terlambat. - dylnmc
Baiklah @dylnmc, saya menghargainya. Terima kasih atas komentarnya. - Niloct