Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?
23.10.2021, 22:55:39

.
Einloggen mit Benutzername, Passwort und Sitzungslänge

Mitglieder
Statistiken
  • Beiträge insgesamt: 759315
  • Themen insgesamt: 61007
  • Heute online: 616
  • Am meisten online: 2287
  • (22.01.2020, 19:20:24)
Benutzer Online

Autor Thema: [gelöst]  bashbefehl du und filtern der Ausgabe: nur Zahlen aber kein du: am Anfang wie?  (Gelesen 469 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

[gelöst] Re: bashbefehl du und filtern der Ausgabe: nur Zahlen aber kein du: am Anfang wie?
« Antwort #15 am: 07.10.2021, 00:46:46 »
Nachtrag: gäbe es trotzdem eine Möglichkeit, die Fehlermeldungen wegzugrepen, statt das mit 2>/dev/null zu lösen?
Nein, weil die grep gar nicht mitbekommt.
Die Ausgabe von du geht auf stdout (1), welches an grep per | weitergeleitet wird.
Die Fehlermeldungen gehen an stderr (2), und wenn du sie nicht mit 2> /dev/null, wie Zecke beschrieben hat, ins Nirwana umleitest, landen sie auf dem Bildschirm.

... es sei denn, man legt die beiden Kanäle mit 2>&1 zusammen.   ;)

Wenn der Befehl so gestaltet wird, dass keine Fehler gemeldet werden, braucht man die nicht wegfiltern.
Das erscheint mir als beste Lösung.
/proc und /run sind spezielle Verzeichnisse und für die dauerhafte Speicher-Belegung uninteressant. Mit der Option -x werden sie vermutlich deswegen auch nicht berücksichtigt (habe ich durch Zufall festgestellt). Die genauen Hintergründe kenne ich nicht.
-x ersetzt auch --exclude /media
Nebeneffekt: das Ergebnis wird deutlich schneller ermittelt.

Edit
dev : Enthält nur die im Dokument »Linux Allocated Devices« beschriebenen Links
/proc : Enthält Kernel- und Prozessinformationen in einem virtuellen Dateisystem
/run : soll das Verzeichnis /var/run ersetzen und das Problem lösen, dass beim Bootvorgang /var/run unter bestimmten Umständen noch nicht verfügbar ist, aber zum Booten benötigt wird. Enthält Daten, welche für laufende Prozesse Bedeutung haben.
« Letzte Änderung: 07.10.2021, 07:16:42 von aexe »

... es sei denn, man legt die beiden Kanäle mit 2>&1 zusammen.   ;)
Das wäre dann von hinten durch die Brust ins Auge  ;D
Zuerst die Ausgabe auf stout erzwingen, um sie dann "wegzugreppen".