Ich habe ein Problem damit, mit Barcat während der Komprimierung einen Dialog anzuzeigen. Sie fragen sich, wie die genaue Syntax lautet?
hier ist ein Link zuBarcat
Dinge, die ich versucht habe, sind
bar -n apache24.tar.xz |tar -Jcf -
bar -n apache24.tar.xz |tar -Jcf - apache24/
bar -n apache24.tar.xz |tar -Jcf apache24/ -
bar -c 'tar -Jcf apache24/ apache.tar.xz'
bar -c 'tar -Jcf apache.tar.xz apache24/'
bar -n apache24.tar.xz apache24/ |tar -Jcf -
bar -n apache24/ apache24.tar.xz |tar -Jcf -
bar -n apache24/ |tar -Jcf -
bar -n apache24/ |tar -Jcf -- apache.tar.xz
bar -n apache.tar.xz |tar -Jcf apache24/ --
bar -n apache.tar.xz -- apache24/ |tar -Jcf -
bar -n apache.tar.xz apache24/ |tar -Jcf -
bar -n apache.tar.xz apache24/ |tar -Jcf --
bar -n apache24/ apache.tar.xz |tar -Jcf -
Entschuldigen Sie alle Duplikate, die ich gerade aus der Geschichte eingefügt habe
Antwort1
Das kann es nicht, zumindest nicht so bequem, wie Sie es sich wahrscheinlich wünschen würden. Um zu verstehen, warum, müssen Sie sich überlegen, wie ein solches Programm funktionieren würde. Im Fall der Dekomprimierung kann es einfach die Originaldatei stat verwenden, .tar.xz
um ihre Größe zu ermitteln, und der Fortschritt kann als Anzahl der durchgelaufenen Bytes bar
, geteilt durch die Dateigröße, berechnet werden. Aber im Fall der Komprimierung bar
ist es nicht intelligent genug, um die Originalgröße des Verzeichnisses zu ermitteln, noch kennt es die endgültige Größe einer Eingabe, die ihm weitergeleitet wird (z. B. wenn die Ausgabe von an tar
gestreamt wird bar
).
bar
scheint eine -s
Option zu akzeptieren, mit der Sie bei der erwarteten Größe nachhelfen können, aber ich konnte es nicht dazu bringen, tatsächlich eine korrekte Ausgabe zu erzeugen. Das sieht ungefähr so aus, wenn Sie noch mehr damit herumspielen möchten:
tar cf - apache24/ | bar -s $(du -sb apache24 | cut -f1) | xz > apache24.tar.xz
In der Praxis müssten Sie der du
Ausgabe wahrscheinlich einen Schummelfaktor hinzufügen, um den Mehraufwand im tar
Format zu berücksichtigen. Das ist natürlich nicht sehr praktisch.