Bagaimana cara mendapatkan perintah 'jelas' di Cygwin?

198

Saya menginstal Cygwin, memilih paket yang cukup minimal.

Di terminal, saya mencoba melakukan 'clear' untuk membersihkan terminal, tetapi saya mengerti

bash: clear: command not found

Bagaimana saya membuatnya bekerja?

MarnixKlooster ReinstateMonica
sumber
100
Anda juga bisa mengetikkan kontrol-L.
Keith Thompson
1
Ya, tetapi (bagi saya) yang tidak berfungsi dalam set -o vimode; itu tidak bekerja dalam set -o emacsmodus sekalipun. Terima kasih.
MarnixKlooster ReinstateMonica
1
Dalam set -o vimode, Anda dapat mengetikkan escape diikuti dengan control-L (lalu ikembali ke mode insert). (Secara pribadi, saya suka vi sebagai editor, tetapi tidak sebagai mode shell interaktif.)
Keith Thompson
4
tekan ctrl + L untuk menghapus
KOTIOS
2
Perhatikan bahwa ncursespaket (sebagaimana dinyatakan dalam jawaban yang diterima) juga mencakup perintah terkait terminal berguna lainnya tput, sehingga mungkin layak untuk diinstal tergantung pada kebutuhan Anda.
Donald Burr

Jawaban:

242

Instal paket Cygwin ncurses; itu dalam kategori Utils.

MarnixKlooster ReinstateMonica
sumber
2
Paket ini tampaknya tidak ada dalam versi cygwin 64-bit saat ini.
Andrew Prock
6
@AndrewProck Sepertinya sudah ada di sana sekarang!
Rohaq
Terima kasih untuk ini! Jika Anda sudah menginstal cygwin, Anda dapat menginstal ncurses dengan mengikuti bagian "Install ncurses" di sini: java.ociweb.com/mark/programming/tmuxInCygwin.html
jbisa
Jika Anda tidak menemukan ncourses, ubah mirror di awal instalasi, atau gunakan kotak pencarian
albertoiNET
125

Ini harus dilakukan:

alias clear='printf "\033c"'
Krishna Murthy
sumber
2
Jawaban yang bagus Dalam versi Cygwin yang lebih lama, cmd /c clsdigunakan untuk bekerja seperti yang dijelaskan di stackoverflow.com/q/15598245/1207769 . Tetapi solusi itu berhenti bekerja, sedangkan ini printfmasih berfungsi sampai tulisan ini.
ctrueden
1
Luar biasa - masih berfungsi pada September 2014. Hanya untuk menambahkan kejelasan catatan Anda dapat menambahkan ini ke file ./bashrc Anda (cukup salin dan lewati baris) yang akan Anda temukan di bawah / home / [nama pengguna] dan Anda akan membuatnya permanen.
Sam Redway
Ini juga berguna untuk Gow bash, tetapi msysgit memiliki program sendiri yang jelas di direktori bin
icc97
1
Ini adalah jawaban terbaik untuk menghapus scrollback dan juga layar saat ini. Ncurses tidak menghapus scrollback untuk saya.
blockloop
Jawaban yang bagus ... Anda dapat menggunakan ini bahkan pada server produksi di mana Anda tidak diperbolehkan menginstal paket (saya tahu ... Cygwin di server produksi Windows .. bukan xd pilihan saya). Anda hanya perlu menambahkannya ke ~/.bashrcfile Anda sourcedan itu selesai ... Pekerjaan bagus menunjukkan itu
Luke Savefrogs
35

cukup gunakan pintasan ini: Alt+F8dan Ctrl-Luntuk melewati halaman

Abudayah
sumber
4
Ini bukan yang diminta pengguna, terkadang membersihkan layar sangat berguna untuk memastikan dengan cepat output yang Anda dapatkan berasal dari tempat yang Anda pikir berasal.
DrCord
1
Tapi bukan jawaban sama sekali untuk pertanyaan itu, jika Anda menaruh setiap informasi bermanfaat yang sedikit terkait pada setiap posting stack overflow maka itu akan menjadi mengerikan.
DrCord
3
Pencarian Google untuk "cygwin clear screen" membuat saya di sini, jawaban ini benar untuk saya. Namun Anda bisa seketat yang Anda inginkan mengenai jawaban, ruang lingkup, batasan, dan yang lainnya - tetapi sejauh yang saya ketahui, ini menyelesaikannya untuk saya dan mendapatkan suara sebagai "membantu".
Bing
Maka pertempuran pun berkobar: kaum puritan dan anti-puritan menembaki sisi-sisi yang berlawanan dari perbedaan filosofis. Jika seorang pejuang terbunuh, ia dilemparkan ke jurang, dan ketika ia jatuh kedua belah pihak menutupi telinga mereka untuk menghindari mendengar teriakan Paradox.
Stabledog
14

Gunakan cygcheckperintah untuk memeriksa apa paket itu di (menambahkan .exestring cmd Anda, dalam contoh ini: clear.exe)

> cygcheck -p 'clear.exe'
Found 4 matches for clear.exe
ncurses-debuginfo-5.9-20150307-1 - ncurses-debuginfo: Debug info for ncurses (installed binaries and support files)
ncurses-debuginfo-5.9-20150404-1 - ncurses-debuginfo: Debug info for ncurses (installed binaries and support files)
ncurses-5.9-20150307-1 - ncurses: Terminal display utilities (installed binaries and support files)
ncurses-5.9-20150404-1 - ncurses: Terminal display utilities (installed binaries and support files)

dan Anda tahu Anda harus menginstal ncursespaket menggunakan penginstal cygwin.

Kossak
sumber
13

Sangat menyenangkan memiliki clear.exeprogram untuk file skrip bash, jadi:

Detail Windows Cygwin untuk clear.exeperintah program.

  1. Unduh Cygwin setupx86.exeatau apa pun panggilannya di http://cygwin.com/

  2. Jalankan dan unduh dari internet. * Jika Anda memiliki koneksi proxy, Anda mungkin perlu menggunakan pengaturan Internet Explorer atau mengatur proxy khusus.

  3. Pilih semua pengaturan default, dan selesaikan instalasi.

  4. Jalankan pemasang untuk kedua kalinya dan unduh lagi dari internet, tetapi kali ini Anda akan masuk Utils, ketika datang ke pohon file untuk menyesuaikan instalasi Anda.

  5. Rentangkan Utilsdan turunkan ke ncurses"file. Di sana, Anda akan mengklik skipitem, di sebelah kiri utilitas ncurses (ada beberapa).

  6. Setelah mengubah dari skipversi apa pun yang ncursesAnda ingin instal, lanjutkan instalasi, dan selesai.

  7. Jalankan pemasang lagi dan kali ini Anda akan memperluas Libalias perpustakaan.

  8. Temukan installer perpustakaan terminfo, dan sekali lagi ubah skipke versi terbaru, kemudian lanjutkan dan selesaikan instalasi.

CATATAN Anda mungkin akhirnya harus keluar dari Windows dan masuk kembali, atau hanya reboot sebelum program baru berlaku. Ini karena kemungkinan sesi latar belakang Cygwin.

CATATAN Anda juga harus melakukan tiga instalasi terpisah.

Jared French
sumber
@ Chris: Saya meminta ini hanya demi kejelasan. Mengapa perpustakaan basis data terminfo diperlukan di sini? Perintah yang jelas bekerja dengan baik untuk saya. Saya membaca tentang terminfo (seperti tautan yang disediakan ) tetapi ingin tahu apakah ada sesuatu yang spesifik di sini?
Starney
11

Klik kanan> Reset ... (Alt + F8) bekerja untuk saya ... (di Cygwin-x86-2.830)

SxOne
sumber
1
+1 Ctrl+ Ldan clearperintah ncurses mempertahankan scrollback, sedangkan ini menghapusnya.
Zantier
10

Saya mencoba di sistem saya: Ini berfungsi:

Just use: cntrl+l

Semoga bantuan ini!

Anshu Kumar
sumber
7

Buka Windows Explorer lalu navigasikan ke:

[Direktori Instalasi Cygwin] \ home \ [Pengguna] \

e.g.: C:\cygwin\home\wreckseal

kemudian buka file .bashrcdengan Notepad ++.

Pindahkan kursor Anda di akhir baris terakhir dan tekan Entertombol, lalu tambahkan teks di bawah ini.

alias cls = 'echo -e "\ 033c"'

atau teks di bawah ini:

alias cls = 'printf "\ 033c"'

Mulai ulang cygwin, ketik cls. Selesai!

Perhatikan bahwa tidak ada scrollbar setelah mengirim perintah cls. Saya lebih suka printfversi daripada echoversi. Cobalah sendiri!

bangkai kapal
sumber
6

Pendekatan umum untuk masalah seperti itu:
Cari di halaman pencarian paket Cygwin dengan nama lengkap yang dapat dieksekusi.

Sekarang pencarian paket dapat dilakukan dengan beberapa cara:

Dan semua 4 pertandingan ini sekarang dari ncursespaket. (Yaitu 2 debug dan 2 versi stabil.

(Kiat Pro: Klik kanan bidang pencarian dan buat mesin pencari yang disesuaikan. Saya telah menetapkan ini sebagai pintasan cpuntuk "paket cygwin" di Firefox dan Chrome.)

StackzOfZtuff
sumber
2

Saya baru saja menemukan proyek ini dan sejauh ini, saya pikir itu luar biasa

https://github.com/transcode-open/apt-cyg

setelah menginstalnya, Anda dapat menjalankan

apt-cyg install ncurses

Saya pribadi lebih suka menginstal pustaka menggunakan alat ini di atas alat Cygwin b / c semua versi Cygwin memiliki .exe ditambahkan ke mereka, dan dapat menjadi rumit ketika menyalin dan menempelkan perintah Linux (dari SO, misalnya).

Bradley Bossard
sumber