GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Commandline überschreibt sich selbst, wenn die Befehle zu lang werden

Ich habe dieses Verhalten gesehen, wenn Sie die Größe des Putty-Fensters ändern, während ein anderer Befehl ausgeführt wird, da Bash kein Signal erhält, das ihm mitteilt, dass sich die Größe des Fensters geändert hat.

Wenn dies das Problem ist, fügen Sie hinzu:

shopt -s checkwinsize

sollte es verschwinden lassen.


Versuchen Sie, Strg zu drücken + L . (Oder vielleicht Alt + L - etwas + L sowieso.) Wenn ich mich recht erinnere, führt dies den Code erneut aus, um Ihre Terminalgröße herauszufinden, und passt sich entsprechend an.


Ich habe das gerade selbst gelöst.

Es waren nur ein paar farbige Fluchtzeichen in der PS1-Eingabeaufforderung:

LTGREEN="\033[40;1;32m"
LTBLUE="\033[40;1;34m"
CLEAR="\033[0m"
LIGHT_GRAY="\033[40;1;33m"
export PS1="$LTGREEN\[email protected]\h:$LIGHT_GRAY\w$CLEAR ❯ "

Das Problem ist, dass die Farbliterale nicht in Klammern eingeschlossen sind. Das Platzieren von Escape-Klammern um sie herum behebt das Problem vollständig:

LTGREEN="\[\033[40;1;32m\]"
LTBLUE="\[\033[40;1;34m\]"
CLEAR="\[\033[0m\]"
LIGHT_GRAY="\[\033[40;1;33m\]"
export PS1="$LTGREEN\[email protected]\h:$LIGHT_GRAY\w$CLEAR ❯ "

Hoffe das hilft.


Versuchen Sie:

eval $(resize)

ََََََََََ


Linux
  1. Holen Sie sich individuelle Manpages für die Bash Builtin-Befehle?

  2. Holen Sie sich das Komplement des Ergebnisses eines Ls-Befehls?

  3. Erhalten Sie „Erlaubnis verweigert“, wenn Sie die Ausgabe von Sudo Echo „xyz“ in eine Datei umleiten?

  4. Linux – Wie bekomme ich Pacman dazu, die benutzerdefinierten Pkgbuilds beim Aktualisieren zu verwenden?

  5. 3 Tricks, um mehrere Befehle in derselben Zeile auszugeben

So erhalten Sie die Größe eines Verzeichnisses in Linux

Undistract-me :Erhalten Sie eine Benachrichtigung, wenn lang andauernde Terminalbefehle abgeschlossen sind

Linux für Anfänger:10 Befehle für den Einstieg am Terminal

Cheat, ein Tool, um Cheats für Befehle vom Linux-Terminal selbst abzurufen

Nach der Installation von Monit, wenn ich den Monit-Status myproc ausführe, erhalte ich einen Fehler beim Verbinden mit dem Monit-Daemon

ps:vollständiger Befehl ist zu lang