Ich bin bei Sun Solaris OS angemeldet. Ich möchte eine komprimierte TAR-Datei erstellen und extrahieren. Ich habe diesen normalen UNIX-Befehl ausprobiert:
tar -cvzf file.tar.gz directory1
Es kann unter Sun OS nicht mit folgendem Fehler ausgeführt werden
bash-3.2$ tar -cvzf file.tar.tz directory1
tar: z: unknown function modifier
Usage: tar {c|r|t|u|x}[BDeEFhilmnopPqTvw@[0-7]][bfk][X...] [blocksize] [tarfile] [size] [exclude-file...] {file | -I include-file | -C directory file}...
z
Flagge zu GNU tar hinzufügten, verloren wir unser bestes Beispiel dafür, wie man Menschen lehrt, logisch zu denken und eine Pipeline zu konstruieren ...Antworten:
Um die Erstellung einer temporären Zwischendatei zu vermeiden, können Sie diesen Befehl verwenden
quelle
f -
benötigt oder wird Solaristar
standardmäßig auf stdout ausgegeben?f
,tar
wird das durch dieTAPE
Umgebungsvariable angegebene Gerät verwendet , falls festgelegt; andernfalls werden die in definierten Standardwerte verwendet/etc/default/tar
." Also, nein, es sieht nicht so aus, als könnten Sie davon ausgehen, dass diesf -
nicht benötigt wird.Es sieht so aus, als ob Solaris
tar
nicht weiß, wie man komprimiert. Also mach es einfach manuell:Das ist
-z
sowieso alles, was der Wechsel von GNU tar bewirkt. Der obige Befehl wird erzeugtfile.tar.gz
.quelle
file.tar
), ist jedoch unnötig langsam und verschwendet unnötigen Speicherplatz. Ich kann mir keine Situation vorstellen, in der dies Romeo Ninovs Antwort vorzuziehen wäre .Überprüfen Sie, ob Sie
SUNWgtar
installiert haben. Dies ist die GNU-Version vontar
und bietet/usr/sfw/bin/gtar
, die die Verwendung der GNU-Optionen zum Tarieren ermöglicht.quelle
Bitte versuchen Sie es mit dem folgenden Befehl
(um die Datei auf Solaris zu komprimieren)
(entpacken)
quelle