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

Printed on: April 25, 2024 at 08:04 o'clock

Member: HanTrio
HanTrio Sep 21, 2021 at 12:08:23 (UTC)
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 ...
Member: OIOOIOOIOIIOOOIIOIIOIOOO
OIOOIOOIOIIOOOIIOIIOIOOO Sep 21, 2021 at 12:23:17 (UTC)
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
Member: godlie
godlie Sep 21, 2021 updated at 12:49:34 (UTC)
Goto Top
Hallo,

hm sollte das nicht SHIFT + PAGE_UP / PAGE_DOWN funktionieren?
Respektive CTR + ALT + ARROW_UP .....
Member: OIOOIOOIOIIOOOIIOIIOIOOO
OIOOIOOIOIIOOOIIOIIOIOOO Sep 21, 2021 at 13:48:27 (UTC)
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
Member: godlie
godlie Sep 21, 2021 updated at 13:53:28 (UTC)
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
Member: OIOOIOOIOIIOOOIIOIIOIOOO
OIOOIOOIOIIOOOIIOIIOIOOO Sep 21, 2021 at 13:56:10 (UTC)
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
Member: erikro
erikro Sep 21, 2021 at 16:06:58 (UTC)
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
Member: HanTrio
HanTrio Sep 21, 2021 at 16:58:43 (UTC)
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.
Member: Lochkartenstanzer
Lochkartenstanzer Sep 21, 2021 at 17:01:19 (UTC)
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
Member: OIOOIOOIOIIOOOIIOIIOIOOO
OIOOIOOIOIIOOOIIOIIOIOOO Sep 22, 2021 at 07:39:53 (UTC)
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