Wie erstelle ich einen cls-artigen Befehl für Ubuntu/Linux, der nicht nur den Terminalemulatorbildschirm löscht, sondern auch dafür sorgt, dass Sie nicht nach oben scrollen können, um die gelöschten Inhalte anzuzeigen? Beachten Sie, dass der clear
Befehl den Text nicht löscht. Er scrollt ihn nur nach oben aus dem Blickfeld. Außerdem wären alle Informationen zum Einrichten als systemweiter Befehl cls
hilfreich (besonders nützlich für Windows-Benutzer, die zu Linux wechseln).
Antwort1
Erstellen Sie ein Skript, geben Sie ihm einen Namen cls
, machen Sie es ausführbar ( chmod +x cls
) und geben Sie ihm diesen Inhalt:
#!/bin/bash
printf "\033c"
Bevor Sie es zu Ihrem Pfad hinzufügen, sollten Sie sicherstellen, dass nicht cls
bereits Programme aufgerufen werden:
update-alternatives --config cls
Um es anschließend systemweit zu Ihrem Pfad hinzuzufügen, platzieren Sie Ihr Skript an einem sicheren Systemspeicherort, beispielsweise /opt/bin/cls
und verwenden Sie , update-alternatives
um es dem Pfad für alle Benutzer hinzuzufügen:
sudo update-alternatives --install /usr/bin/cls cls /opt/bin/cls 0
Sie können Ihr Skript dort platzieren ~/bin
(die Tilde steht für Ihr Home-Verzeichnis), damit es sich im Pfad eines einzelnen Benutzers befindet (wenn Sie das bin
Verzeichnis erstellen mussten, müssen Sie Ihren Computer neu starten, bevor es sich in Ihrem Pfad befindet). In diesem Fall müssen Sie mit Update-Alternativen nichts tun).
Antwort2
Wie bereits von @user2962794 erwähnt, gibt der Befehl zum Löschen des Terminals den Escape-Code aus \033c
. Dies ist die VT-100 ANSI-Escape-Sequenz zum Zurücksetzen des Terminals in seinen Ausgangszustand (RIS, sieheHier) und ist ein ASCII-Escape-Zeichen ( \033
), gefolgt von einem c
.
Um Ihr Terminal zu löschen, benötigen Sie daher nur einen der
printf printf "\033c"
oder
echo -ne "\033c"
Um das zu vereinfachen, können Sie einen Alias dafür erstellen. Fügen Sie diese Zeile zu Ihrem hinzu ~/.bashrc
:
alias cls="printf '\033c'"
Öffnen Sie nun ein neues Terminal und durch Ausführen cls
wird es gelöscht. Beachten Sie, dass ein bereits vorhandener Befehl mit dem Namen durch cls
diesen ersetzt wird. Um dies zu vermeiden, wählen Sie unbedingt einen eindeutigen Namen.