Vorschau des aktuellen Verzeichnisses in der Shell

344
Yuki

Was häufig passiert, wenn ich in einer Shell arbeite - zsh - ist, dass ich mich cdirgendwo verändert habe und einen kurzen Blick auf das Verzeichnis werfen möchte. Die Verwendung erzeugt lsmöglicherweise eine große Ausgabe und belässt sie im Terminal. Die Verwendung ls | lessist besser, jedoch hinterlässt sie wieder Spuren, wenn ich die lessAusgabe beendet habe. Haben Sie eine Idee, wie ich etwas tun kann, ls | lessaber wenn ich aufhöre less, bleibt der Bildschirm des Terminals unberührt.

0

2 Antworten auf die Frage

1
Attie

Für mich lessverhält, wie Sie beschreiben - ich muss verwenden deaktivieren dieses Verhalten.less -X

Sie können explizit den " alternativen Bildschirmpuffer " verwenden, den viele Terminals implementieren.

Dies wird von Editoren wie vim/ verwendet nano, so dass beim Beenden des Terminals das vorherige Format wiederhergestellt wird.

Versuche dies:

tput smcup ls | less tput rmcup 

Wenn tputnicht verfügbar ist, versuchen Sie es mit echo $'\e[?1049h'/ echo $'\e[?1049l'.

"less -X" ändert dabei nichts an mir. Yuki vor 5 Jahren 0
Was ist mit 'tput'? Attie vor 5 Jahren 0
0
Brian Snook

Da Sie erwähnen, dass Sie zsh verwenden, können Sie die Tab-Vervollständigung von zsh Builtin nutzen. Sie erhalten keine "lange" ls-Auflistung, Sie können jedoch eine Vorschau der Namen von Verzeichnissen und Dateien anzeigen, indem Sie "ls" gefolgt von einem Tab eingeben. Sie sehen, welche Dateien / Verzeichnisse Sie möglicherweise in Ihrem aktuellen Arbeitsverzeichnis "ls" haben könnten, und Sie können entweder eine angeben, einen "-l-Dateinamen" hinzufügen, um einen bestimmten Eintrag im Detail anzuzeigen, oder einfach "Control- u "löschen Sie die Zeile, in der Sie sich gerade befinden, und bereiten Sie sich vor, einen anderen Befehl einzugeben. Die Vorschläge für die Tab-Vervollständigung werden ausgeblendet.

Wenn ich zum Beispiel [TAB] auf einer meiner VMs "ls", sehe ich:

user@fbsd:~% ls .cshrc .mailrc .ssh/ .login .profile .zshrc .login_conf .rhosts code/ .mail_aliases .shrc inventory.hw.gather.sh* 

Wenn ich auf Control-u klicke, verschwinden die Vorschläge unter meiner Befehlszeile.

Vielen Dank. das stimmt, aber ich möchte etwas mehr generisches. Das könnte ich zum Beispiel `ls -lah` machen usw. Yuki vor 5 Jahren 0