oiooiooioiioooiioiioiooo
Goto Top

Linux: Ausgabe vom letzten Befehl noch einmal ausgeben

Guten Tag,

ich bin mir zur 99,98 % sicher, dass es möglich gewesen ist die letzte Ausgabe vom System noch einmal an zuneigen. Ohne die Operation noch einmal durchführen zu müssen.

Oder ist es bin ich nur zur 99,98% unsicher?

Viele Grüße

Ich

Content-Key: 1288113327

Url: https://administrator.de/contentid/1288113327

Ausgedruckt am: 19.03.2024 um 09:03 Uhr

Mitglied: HanTrio
HanTrio 21.09.2021 um 14:08:23 Uhr
Goto Top
Meinst du das "bang bang", also einfach die Eingabe von "!!" ?
-> Hauptsächlich bekannt wohl von "sudo !!" ;)

Das führt das letzte Command aus der history erneut aus (allerdings mag sich die Ausgabe natürlich ggf unterscheiden).

Ansonsten wüsste ich keine eingebaute Funktion dafür, aber hier wäre ein interessanter Ansatz:
https://stackoverflow.com/questions/24283097/reusing-output-from-last-co ...
Mitglied: OIOOIOOIOIIOOOIIOIIOIOOO
OIOOIOOIOIIOOOIIOIIOIOOO 21.09.2021 um 14:23:17 Uhr
Goto Top
Moin HanTrio,

ne. Das meinte ich leider nicht. Ich möchte ja nicht die Operation noch einmal ausführen, sondern in der Tat das noch einmal ausgeben, was bereits angezeigt wurde.

Das brauche ich in der Tat auch nicht für einen Script sondern bei der Arbeit an einem Terminal.

Liebe Grüße

Ich
Mitglied: godlie
godlie 21.09.2021 aktualisiert um 14:49:34 Uhr
Goto Top
Hallo,

hm sollte das nicht SHIFT + PAGE_UP / PAGE_DOWN funktionieren?
Respektive CTR + ALT + ARROW_UP .....
Mitglied: OIOOIOOIOIIOOOIIOIIOIOOO
OIOOIOOIOIIOOOIIOIIOIOOO 21.09.2021 um 15:48:27 Uhr
Goto Top
ja die Funktion SHIFT + PAGE_UP / PAGE_DOWN ist mir bekannt.

Meine Idee ist jedoch gewesen ...

zum Beispiel:
which ls
ls `!!`

Jetzt ist es so natürlich egal, ob die Operation nun ausgeführt wird oder nicht. Ich bin mir jedoch sicher, dass ich genau diese Funktion auf einem OS gehabt habe. face-sad
Mitglied: godlie
godlie 21.09.2021 aktualisiert um 15:53:28 Uhr
Goto Top
Hallo,

MacBook-PS ps % which ls
/bin/ls
MacBook-PS ps % !!
which ls
/bin/ls
MacBook-PS ps %

also wenn ich das so ausführe kommt eig. alles so wie solls, auser du suchst was besonderes
Mitglied: OIOOIOOIOIIOOOIIOIIOIOOO
OIOOIOOIOIIOOOIIOIIOIOOO 21.09.2021 um 15:56:10 Uhr
Goto Top
das ist richtig.

Nur wird beim !! die Operation wiederholt und so wie HanTrio bereits oben geschrieben hat, ändert sich dann auch die Ausgabe.

Zum Beispiel:

ping 1.1.1.1 -c 1
Mitglied: erikro
erikro 21.09.2021 um 18:06:58 Uhr
Goto Top
Moin,

Zitat von @OIOOIOOIOIIOOOIIOIIOIOOO:
ich bin mir zur 99,98 % sicher, dass es möglich gewesen ist die letzte Ausgabe vom System noch einmal an zuneigen.

Klar doch. Du hebst den Monitor hoch und neigst ihn in die gewünschte Richtung. Aber vorsichtig. Neigst Du zu stark, fallen die Buchstaben an der Seite raus. face-wink

Spaß beiseite. Entweder einfach in der Konsole hochscrollen, wie die Kollegen schon sagten, oder, wenn Du weißt, dass Du das für spätere Analysen brauchst, pipe auf tee.

ls -l | tee ~/meine_dateien.txt

Das sorgt dafür, dass einerseits alles auf stdout angezeigt wird, also in der Regel auf dem Monitor, und in die Datei geschrieben wird.

hth

Erik
Mitglied: HanTrio
HanTrio 21.09.2021 um 18:58:43 Uhr
Goto Top
Ok, also du suchst so etwas wie eine "stdout history", richtig?

Die scheint es per sé nicht zu geben (außer eben in Form der scrollback-Funktion des Terminals an sich), das müsste man wohl über eine Art Logging regeln.

Ich bin hier auf zwei Workarounds gestoßen, die dem evtl nahe kommen:

https://askubuntu.com/a/759004
bash | tee log.txt
-> startet eine neue (Sub)shell, und wenn du diese verlässt, wird alles ins Logfile geschrieben, inkl. Output.

https://stackoverflow.com/questions/24283097/reusing-output-from-last-co ...
(bereits eingangs erwähnt)
-> bau zwei Mini-Funktionen namens zB "cap" und "ret" in deine .bashrc ein:

# capture the output of a command so it can be retrieved with ret
cap () { tee /tmp/capture.out; }

# return the output of the most recent command that was captured by cap
ret () { cat /tmp/capture.out; }

Das Command, dessen Output du "einfangen" willst, pipest du dann (allerdings jedes Mal manuell, eben immer wenn benötigt) in "cap" rein, und mit "ret" kannst du es wieder auslesen.
Mitglied: Lochkartenstanzer
Lochkartenstanzer 21.09.2021 um 19:01:19 Uhr
Goto Top
Zitat von @OIOOIOOIOIIOOOIIOIIOIOOO:

Guten Tag,

ich bin mir zur 99,98 % sicher, dass es möglich gewesen ist die letzte Ausgabe vom System noch einmal an zuneigen. Ohne die Operation noch einmal durchführen zu müssen.

Ja, indem man sie mit tee in eine datei schreibt und diese dann anschließend mit less anschaut:

ls -lsaFR / 2>&1 | tee ls-alle-dateien.txt

Durch die Umleitung von stderr kannst Du dann sogar alle fehler nachlesen.

lks
Mitglied: OIOOIOOIOIIOOOIIOIIOIOOO
OIOOIOOIOIIOOOIIOIIOIOOO 22.09.2021 um 09:39:53 Uhr
Goto Top
herzlichen Dank für eure Vorschläge.

Zitat von @erikro:
Klar doch. Du hebst den Monitor hoch und neigst ihn in die gewünschte Richtung. Aber vorsichtig. Neigst Du zu stark, fallen die Buchstaben an der Seite raus. face-wink

Der Vorschlag ist immer noch das Beste, denn dann kann ich mir die Ausgabe so zurecht kleben wie ich diese haben möchte face-smile

Ich persönlich bevorzuge lieber Variable

V=$(ping 1.1.1.1 -c 1)

so werden keine Daten auf Platte geschrieben und man kann es mit einfachem echo $V wieder abrufen.

Das ist jedoch nicht das was ich gerne gehabt hätte. face-smile

Liebe Grüße

Ich