Wie erhalte ich den Befehl 'clear' in Cygwin?

198

Ich habe Cygwin installiert und eine ziemlich minimale Anzahl von Paketen ausgewählt.

In einem Terminal habe ich versucht, "Löschen" zu tun, um das Terminal zu löschen, aber ich verstehe

bash: clear: command not found

Wie bringe ich das zum Laufen?

MarnixKlooster ReinstateMonica
quelle
100
Sie können auch control-L eingeben.
Keith Thompson
1
Ja, aber (für mich) funktioniert das nicht im set -o viModus; Es funktioniert jedoch im set -o emacsModus. Vielen Dank.
MarnixKlooster ReinstateMonica
1
Im set -o viModus können Sie Escape gefolgt von Strg-L eingeben ( ium dann zum Einfügemodus zurückzukehren). (Ich persönlich mag vi als Editor, aber nicht als interaktiven Shell-Modus.)
Keith Thompson
4
Drücken Sie Strg + L, um zu löschen
KOTIOS
2
Beachten Sie, dass das ncursesPaket (wie in der akzeptierten Antwort angegeben) auch andere nützliche terminalbezogene Befehle enthält, z. B. tput, sodass sich die Installation je nach Ihren Anforderungen möglicherweise lohnt.
Donald Burr

Antworten:

242

Installieren Sie das Cygwin-Paket ncurses. Es ist in der Kategorie Utils.

MarnixKlooster ReinstateMonica
quelle
2
Dieses Paket scheint nicht in der aktuellen Cygwin 64-Bit-Version zu sein.
Andrew Prock
6
@ AndrewProck Es scheint jetzt da zu sein!
Rohaq
Danke dafür! Wenn Sie cygwin bereits installiert haben, können Sie ncurses installieren, indem Sie dem Abschnitt "Install ncurses" hier folgen
jbisa
Wenn Sie keine Kurse finden, wechseln Sie den Spiegel zu Beginn der Installation oder verwenden Sie das Suchfeld
albertoiNET
125

Dies sollte tun:

alias clear='printf "\033c"'
Krishna Murthy
quelle
2
Gute Antwort. In älteren Versionen von Cygwin cmd /c clsfunktionierte es wie unter stackoverflow.com/q/15598245/1207769 beschrieben . Diese Lösung funktionierte jedoch nicht mehr, obwohl dies zum jetzigen Zeitpunkt printfnoch funktioniert.
ctrueden
1
Hervorragend - funktioniert ab September 2014. Nur zur besseren Übersicht können Sie dies zu Ihrer ./bashrc-Datei hinzufügen (einfach kopieren und über die Zeile hinaus), die Sie unter / home / [Benutzername] finden, und diese dauerhaft machen.
Sam Redway
Dies funktioniert auch ein Zauber für Gow Bash, aber msysgit hat ein eigenes klares Programm im bin-Verzeichnis
icc97
1
Dies ist die beste Antwort, um den Bildlauf sowie den aktuellen Bildschirm zu löschen. Ncurses löscht für mich keinen Scrollback.
Blockloop
Tolle Antwort ... Sie können dies sogar auf Produktionsservern verwenden, auf denen Sie keine Pakete installieren dürfen (ich weiß ... Cygwin auf Windows-Produktionsservern ... nicht meine Wahl xd). Sie müssen es nur zu Ihrer ~/.bashrcDatei hinzufügen sourceund es ist erledigt ...
Gute
35

Verwenden Sie einfach diese Verknüpfung: Alt+F8und Ctrl-L, um die Seite zu überspringen

Abudayah
quelle
4
Dies ist nicht das, wonach der Benutzer gefragt hat. Manchmal ist das Löschen des Bildschirms sehr nützlich, um schnell sicherzustellen, dass die Ausgabe von der Stelle stammt, von der Sie glauben, dass sie stammt.
DrCord
1
Aber überhaupt keine Antwort auf die Frage: Wenn Sie jede leicht verwandte nützliche Information auf jeden Stapelüberlaufpfosten setzen, wäre dies ungeheuerlich.
DrCord
3
Eine Google-Suche nach "cygwin clear screen" hat mich hierher gebracht, diese Antwort war für mich richtig. Sie können in Bezug auf Antworten, Umfang, Grenzen und so weiter so streng sein, wie Sie möchten - aber was mich betrifft, hat dies das Problem für mich gelöst und eine positive Abstimmung als wirklich "hilfreich" erhalten.
Bing
Und so tobte der Kampf: Die Puristen und Antipuristen beschossen von entgegengesetzten Seiten der philosophischen Kluft. Wenn ein Kämpfer getötet wurde, wurde er in den Abgrund geworfen, und als er fiel, bedeckten beide Seiten ihre Ohren, um die Schreie der Paradoxien nicht zu hören.
Stabledog
14

Verwenden cygcheckBefehl zu überprüfen , was Paket ist in (Hinzufügen .exezu Ihrem cmd Zeichenfolge in diesem Beispiel: 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)

und Sie wissen, dass Sie das ncursesPaket mit dem Cygwin-Installationsprogramm installieren müssen.

Kossak
quelle
13

Es ist schön, das zu haben clear.exe Programm für Bash-Skriptdateien , also:

Windows Cygwin Detail für clear.exeProgrammbefehl.

  1. Laden Sie Cygwin setupx86.exeoder wie auch immer es heißt unter http://cygwin.com/ herunter.

  2. Führen Sie es aus und laden Sie es aus dem Internet herunter. * Wenn Sie eine Proxy-Verbindung haben, müssen Sie möglicherweise die Internet Explorer-Einstellungen verwenden oder einen benutzerdefinierten Proxy einrichten.

  3. Wählen Sie alle Standardeinstellungen und beenden Sie die Installation.

  4. Führen Sie das Installationsprogramm ein zweites Mal aus und laden Sie es erneut aus dem Internet herunter. Dieses Mal werden Sie jedoch darauf eingehen Utils, wenn es um den Dateibaum geht, um Ihre Installation anzupassen.

  5. Erweitern Sie Utilsund gehen Sie zu den ncurses"Dateien". Dort klicken Sie auf das skipElement links neben den ncurses-Dienstprogrammen (es gibt einige).

  6. Setzen Sie die Installation fort und beenden Sie den Vorgang, nachdem Sie skipzu einer beliebigen Version gewechselt haben , die ncursesSie installieren möchten.

  7. Führen Sie das Installationsprogramm erneut aus, und dieses Mal erweitern Sie auch LibBibliotheken.

  8. Suchen Sie das Installationsprogramm für die terminfo-Bibliothek und wechseln Sie erneut skipzur neuesten Version. Fahren Sie dann fort und schließen Sie die Installation ab.

HINWEIS Möglicherweise müssen Sie sich von Windows abmelden und erneut anmelden oder einfach neu starten, bevor die neuen Programme wirksam werden. Dies ist auf die Möglichkeit einer Cygwin-Hintergrundsitzung zurückzuführen.

HINWEIS Sie müssen auch die drei separaten Installationen durchführen.

Jared French
quelle
@ Chris: Ich bitte dies nur aus Gründen der Klarheit. Warum wird hier eine terminfo-Datenbankbibliothek benötigt? Der klare Befehl hat bei mir gut funktioniert. Ich habe über terminfo gelesen (als Link angegeben ), möchte aber wissen, ob es hier etwas Spezielles gibt.
Starney
11

Rechtsklick> Zurücksetzen ... (Alt + F8) hat bei mir funktioniert ... (auf Cygwin-x86-2.830)

SxOne
quelle
1
+1 Ctrl+ Lund der clearBefehl ncurses behalten den Bildlauf bei, während dies ihn löscht.
Zantier
10

Ich habe in meinem System versucht: Es funktioniert:

Just use: cntrl+l

Ich hoffe das hilft!

Anshu Kumar
quelle
7

Öffnen Sie den Windows Explorer und navigieren Sie zu:

[Cygwin-Installationsverzeichnis] ​​\ home \ [Benutzer] \

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

Öffnen Sie dann die Datei .bashrcmit Notepad ++.

Bewegen Sie den Cursor am Ende der letzten Zeile und Enterdrücken Sie die Taste. Fügen Sie dann den folgenden Text hinzu.

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

oder den folgenden Text:

alias cls = 'printf "\ 033c"'

Starten Sie cygwin neu und geben Sie ein cls. Getan!

Beachten Sie, dass nach dem Senden des Befehls cls keine Bildlaufleiste angezeigt wird. Ich bevorzuge die printfVersion als die echoVersion. Versuch es selber!

Wrackseal
quelle
6

Allgemeiner Ansatz für solche Probleme:
Suchen Sie auf der Cygwin-Paketsuchseite mit dem vollständigen Namen der ausführbaren Datei.

Jetzt kann die Paketsuche auf verschiedene Arten durchgeführt werden:

Und alle diese 4 Übereinstimmungen sind jetzt aus den ncursesPaketen. (Nämlich 2 Debug- und 2 stabile Versionen.

(Pro-Tipp: Klicken Sie mit der rechten Maustaste auf das Suchfeld und erstellen Sie eine benutzerdefinierte Suchmaschine. Ich habe dies auf die Verknüpfung cpfür "Cygwin-Paket" in Firefox und Chrome festgelegt.)

StackzOfZtuff
quelle
2

Ich bin gerade auf dieses Projekt gestoßen und finde es bisher großartig

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

Nach der Installation können Sie ausführen

apt-cyg install ncurses

Ich persönlich bevorzuge die Installation von Bibliotheken mit diesem Tool gegenüber dem Cygwin-Tool, da an die Cygwin-Versionen alle .exe angehängt sind und das Kopieren und Einfügen von Linux-Befehlen (z. B. außerhalb von SO) umständlich sein kann.

Bradley Bossard
quelle