Ich habe Strg-L verwendet um den Bildschirm in BASH zu löschen, aber aus irgendeinem Grund funktionierte es nicht mehr. Wenn ich jetzt Strg-L drücke , wird eine neue Zeile erstellt, anstatt den Bildschirm zu löschen. Möglicherweise ist das Problem auf mein kürzlich erfolgtes Update von BASH zurückzuführen (von Version 3.1 auf Version 4.3, um die Shellshock-Schwachstelle zu beheben ). Aber weißt du was, ich finde es wirklich schwierig, in einer ungeschickten Shell zu arbeiten, also muss ich Strg-L zurückbekommen um den Bildschirm zu löschen. Ich habe gerade herumgegoogelt und die folgende Lösung gefunden.
Strg-L sollte gebunden sein, um den Bildschirm zu löschen, und dies kann mit „bind erreicht werden ‘-Befehl unter Linux. Überprüfen Sie, ob Strg-L muss den Bildschirm mit dem folgenden Befehl löschen.
$ bind -P
Der obige Befehl zeigt alle Tasten an, die mit verschiedenen Funktionalitäten verbunden sind. Die Beispielausgabe ist unten:
abort can be found on "\C-g", "\C-x\C-g", "\e\C-g". accept-line can be found on "\C-j", "\C-m". alias-expand-line is not bound to any keys arrow-key-prefix is not bound to any keys backward-byte is not bound to any keys backward-char can be found on "\C-b", "\eOD", "\e[D". backward-delete-char can be found on "\C-h", "\C-?". backward-kill-line can be found on "\C-x\C-?". backward-kill-word can be found on "\e\C-h", "\e\C-?". backward-word can be found on "\e[1;5D", "\e[5D", "\eb". beginning-of-history can be found on "\e<", "\e[5~". beginning-of-line can be found on "\C-a", "\eOH", "\e[1~", "\e[H". call-last-kbd-macro can be found on "\C-xe". capitalize-word can be found on "\ec". character-search can be found on "\C-]". character-search-backward can be found on "\e\C-]". clear-screen can be found on "\C-l". complete can be found on "\C-i", "\e\e". complete-command can be found on "\e!". complete-filename can be found on "\e/". complete-hostname can be found on "\e@". complete-into-braces can be found on "\e{". complete-username can be found on "\e~". complete-variable can be found on "\e$". copy-backward-word is not bound to any keys copy-forward-word is not bound to any keys copy-region-as-kill is not bound to any keys dabbrev-expand is not bound to any keys delete-char can be found on "\C-d", "\e[3~". delete-char-or-list is not bound to any keys delete-horizontal-space can be found on "\e\\". digit-argument can be found on "\e-", "\e0", "\e1", "\e2", "\e3", ... display-shell-version can be found on "\C-x\C-v". do-lowercase-version can be found on "\C-xA", "\C-xB", "\C-xC", "\C-xD", "\C-xE", .. downcase-word can be found on "\el". dump-functions is not bound to any keys dump-macros is not bound to any keys dump-variables is not bound to any keys dynamic-complete-history can be found on "\e\C-i". edit-and-execute-command can be found on "\C-x\C-e". emacs-editing-mode is not bound to any keys end-kbd-macro can be found on "\C-x)". end-of-history can be found on "\e>", "\e[6~". end-of-line can be found on "\C-e", "\eOF", "\e[4~", "\e[8~", "\e[F". exchange-point-and-mark can be found on "\C-x\C-x". forward-backward-delete-char is not bound to any keys forward-byte is not bound to any keys forward-char can be found on "\C-f", "\eOC", "\e[C". forward-search-history can be found on "\C-s". forward-word can be found on "\e[1;5C", "\e[5C", "\ef". glob-complete-word can be found on "\eg". glob-expand-word can be found on "\C-x*". glob-list-expansions can be found on "\C-xg". history-and-alias-expand-line is not bound to any keys history-expand-line can be found on "\e^". history-search-backward is not bound to any keys history-search-forward is not bound to any keys history-substring-search-backward is not bound to any keys history-substring-search-forward is not bound to any keys insert-comment can be found on "\e#". insert-completions can be found on "\e*". insert-last-argument can be found on "\e.", "\e_". kill-line can be found on "\C-k". kill-region is not bound to any keys kill-whole-line is not bound to any keys kill-word can be found on "\ed". magic-space is not bound to any keys menu-complete is not bound to any keys menu-complete-backward is not bound to any keys next-history can be found on "\C-n", "\eOB", "\e[B". non-incremental-forward-search-history can be found on "\en". non-incremental-forward-search-history-again is not bound to any keys non-incremental-reverse-search-history can be found on "\ep". non-incremental-reverse-search-history-again is not bound to any keys old-menu-complete is not bound to any keys operate-and-get-next can be found on "\C-o". overwrite-mode is not bound to any keys possible-command-completions can be found on "\C-x!". possible-completions can be found on "\e=", "\e?". possible-filename-completions can be found on "\C-x/". possible-hostname-completions can be found on "\C-x@". possible-username-completions can be found on "\C-x~". possible-variable-completions can be found on "\C-x$". previous-history can be found on "\C-p", "\eOA", "\e[A". print-last-kbd-macro is not bound to any keys quoted-insert can be found on "\C-q", "\C-v", "\e[2~". redraw-current-line is not bound to any keys re-read-init-file can be found on "\C-x\C-r". reverse-search-history can be found on "\C-r". revert-line can be found on "\e\C-r", "\er". self-insert can be found on " ", "!", "\"", "#", "$", ... set-mark can be found on "\C-@", "\e ". shell-backward-kill-word is not bound to any keys shell-backward-word is not bound to any keys shell-expand-line can be found on "\e\C-e". shell-forward-word is not bound to any keys shell-kill-word is not bound to any keys skip-csi-sequence is not bound to any keys start-kbd-macro can be found on "\C-x(". tab-insert is not bound to any keys tilde-expand can be found on "\e&". transpose-chars can be found on "\C-t". transpose-words can be found on "\et". tty-status is not bound to any keys undo can be found on "\C-x\C-u", "\C-_". universal-argument is not bound to any keys unix-filename-rubout is not bound to any keys unix-line-discard can be found on "\C-u". unix-word-rubout can be found on "\C-w". upcase-word can be found on "\eu". vi-append-eol is not bound to any keys vi-append-mode is not bound to any keys vi-arg-digit is not bound to any keys vi-back-to-indent is not bound to any keys vi-backward-bigword is not bound to any keys vi-backward-word is not bound to any keys vi-bword is not bound to any keys vi-bWord is not bound to any keys vi-change-case is not bound to any keys vi-change-char is not bound to any keys vi-change-to is not bound to any keys vi-char-search is not bound to any keys vi-column is not bound to any keys vi-complete is not bound to any keys vi-delete is not bound to any keys vi-delete-to is not bound to any keys vi-editing-mode is not bound to any keys vi-end-bigword is not bound to any keys vi-end-word is not bound to any keys vi-eof-maybe is not bound to any keys vi-eword is not bound to any keys vi-eWord is not bound to any keys vi-fetch-history is not bound to any keys vi-first-print is not bound to any keys vi-forward-bigword is not bound to any keys vi-forward-word is not bound to any keys vi-fword is not bound to any keys vi-fWord is not bound to any keys vi-goto-mark is not bound to any keys vi-insert-beg is not bound to any keys vi-insertion-mode is not bound to any keys vi-match is not bound to any keys vi-movement-mode is not bound to any keys vi-next-word is not bound to any keys vi-overstrike is not bound to any keys vi-overstrike-delete is not bound to any keys vi-prev-word is not bound to any keys vi-put is not bound to any keys vi-redo is not bound to any keys vi-replace is not bound to any keys vi-rubout is not bound to any keys vi-search is not bound to any keys vi-search-again is not bound to any keys vi-set-mark is not bound to any keys vi-subst is not bound to any keys vi-tilde-expand is not bound to any keys vi-yank-arg is not bound to any keys vi-yank-to is not bound to any keys yank can be found on "\C-y". yank-last-arg can be found on "\e.", "\e_". yank-nth-arg can be found on "\e\C-y". yank-pop can be found on "\ey".
Nun, unser Ziel ist es, den gebundenen Schlüssel auf Clear-Screen zu überprüfen, nicht wahr? Greifen Sie also einfach die Ausgabe von „bind -p ”
$ bind -P | grep clear clear-screen is not bound to any keys
Die obige Ausgabe besagt eindeutig, dass keine Tasten zum Löschen des Bildschirms gebunden sind. Lassen Sie uns also einen mit dem folgenden Befehl erstellen.
$ bind -x '"\C-l": clear;'
Hinweis: Achten Sie auf die Syntax. Wir haben „\C-l doppelt in Anführungszeichen gesetzt “ und einfache Anführungszeichen ‘„\C-l“:clear; ‘
Nachdem Sie den obigen Befehl ausgeführt haben, drücken Sie Strg-L um den leeren Bildschirm zu sehen.
Gebundene Schlüssel weltweit
Warten Sie, Sie haben gerade den Bind-Befehl in der Shell ausgeführt und er bleibt aktiv, bis Sie ihn beenden. Um es für jede neue Sitzung verfügbar zu machen, müssen Sie eine Zeile in /etc/inputrc hinzufügen
$ vi /etc/inputrc
Fügen Sie die folgende Zeile am Ende der Datei hinzu.
"\C-l": clear-screen
Das ist es. Drücken Sie jetzt Strg-L löscht den Bildschirm und funktioniert bei jeder neuen Sitzung.
Was ist, wenn Sie Strg-L möchten mehr als nur klar machen? Sagen Sie Dateien auflisten.
bind -x '"\C-l": clear; ls'
Nachdem der obige Befehl ausgeführt wurde, drücken Sie Strg-L löscht den Bildschirm und listet Dateien im aktuellen Verzeichnis auf.
Kasse „Mensch binden ‘ für weitere Informationen.