Fortschrittsanzeige mit find?

Gast #5824393
Lesenswert?
• ▲
▼
Moin,

ich habe auf einem Linux Rechner ein Script um ein lokales Verzeichnis 
mit rsync mit einem Server zu syncronisieren.

Ich habe mit dem parameter "-progress" eine Anzegie über die aktuelle 
Datei, die Geschwindigkeit, die Zeit die gebraucht wurde für die Datei 
und eine fortlaufende Nummer mit der Gesamtanzahl aller Dateien.

Die Ausgabe sieht so aus:
1
Pfad          
2
Bytes       1.00 MB/s     0:00:00 (xfr#98, to-chk=5/126)

Die Fortlaufende Nummer wird so ausgegeben:

to-chk=5/126

Ich möchte gerne mit einer Pipe, die Ausgabe von rsync umleiten und am 
Ende nur noch folgendes angezeigt bekommen:

1/126

Alle anderen Daten sollen von der Ausgabe "verschwinden".

Kann mir jemand behilflich sein wie ich das bekomme? Ich habe an find 
gedacht. Aber ich weiß nicht genau wie ich damit umgehen soll.

Ich bin über jede Hilfe dankbar!

Grüße
#5824399
Lesenswert?
• ▲
▼
›find‹ ist eher zum Suchen von Dateien im Dateisystem gedacht. Eine der 
einfachsten Methoden, aus einer Ausgabe nur einen Teil auszuschneiden, 
stellt wohl ›cut‹ dar. Wenn’s etwas komplexer sein soll, könnte man auch 
›awk‹ o.Ä. nehmen, aber für den Job hier sollte cut ausreichen.

Wie man’s benutzt, steht in der mitgelieferten Anleitung, aufzurufen mit 
›man cut‹. Wenn man das „=“ als Delimiter nimmt, braucht man nur noch 
das „)“ mit etwa ›sed‹ wegzumachen, und es dürfte dem Gewünschten 
entsprechen.
#5824428
Lesenswert?
• ▲
▼
In der betreffenden Zeile ist doch gar kein Dateiname enthalten, und das 
Ausgabeformat ist vorhersehbar/statisch?

Aber ja, natürlich gibt’s nahezu unendlich viele Möglichkeiten, die 
gewünschten Infos „freizustellen“. Die Möglichkeit mit dem ›cut‹ fand 
ich hier am einfachsten, gerade auch für ’nen Einsteiger. Bevor er das 
mit ›sed‹ hinbekommt, müsste er erstmal viel lesen. Zumindest ich sehe 
erstmal mit meinen sed-Kenntnissen keine einfache Möglichkeit, den Job 
zu erledigen (wobei sich diese Kenntnisse bei mir zugegebenermaßen auch 
im Rahmen von „finden und ersetzen“ halten).

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren