So verwenden Sie GNU parallel mit Gunzip

So verwenden Sie GNU parallel mit Gunzip

Ich habe ein Verzeichnis voller .gz, ich möchte jedes Archiv parallel mit GNU parallel erweitern. Ich habe jedoch nichts erreicht.

Ich habe es versucht

parallel 'gunzip {}' ::: `ls *.gz`
parallel gunzip `ls *.gz`

ohne Ergebnisse sagt mir Bash:

/bin/bash: archive1.gz: command not found
...

Was mache ich falsch?

Danke

Antwort1

ich fandDas, was die Verwendung der --gnuFlagge vorschlägt:

parallel --gnu gunzip  ::: *gz

Wenn dies funktioniert, sollten Sie /etc/parallel/configden Inhalt entweder löschen oder wie folgt ändern : --gnustatt --tollef(als Root)

echo "--gnu" > /etc/parallel/config

Auch,Analysieren Sie niemals die Ausgabe von ls., verwenden Sie Globbing wie oben oder findstattdessen:

find . -name "*gz*" -print0 | parallel -q0 gunzip 

Antwort2

So funktioniert es:

   ls *.gz | parallel -t gunzip

Dies -tist optional, aber nützlich, da es Ihnen die Befehle anzeigt, die auf stderr ausgeführt werden.

Ich bin nicht sicher, ob Sie etwas falsch machen. :::Es sollte funktionieren (es soll gleichwertig sein), aber nicht einmal die Beispiele auf der Manpage funktionieren bei mir.

Update: Die --gnuFlagge lässt es funktionieren, wie Terdon sagte.

verwandte Informationen