TAR Archiver/Unarchiver
-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
TAR Archiver/Unarchiver
Hallo!
Ich war auf der Suche nach einer guten Komponente zum erstellen und bearbeiten von TAR Archiven. Dabei habe ich sehr schnell LibTar gefunden.
Blöderweise erstellt das Teil nur TAR-Archive der alten Generation, was bedeutet, dass z.B. Dateipfade nur 100 Zeichen lang sein dürfen. Gibt es eine gute Pascal-Komponente, die GNUTar-Archive erstellen kann? (Abbrevia möchte ich mir für diese Aufgabe in keinem Fall antun)
Ich war auf der Suche nach einer guten Komponente zum erstellen und bearbeiten von TAR Archiven. Dabei habe ich sehr schnell LibTar gefunden.
Blöderweise erstellt das Teil nur TAR-Archive der alten Generation, was bedeutet, dass z.B. Dateipfade nur 100 Zeichen lang sein dürfen. Gibt es eine gute Pascal-Komponente, die GNUTar-Archive erstellen kann? (Abbrevia möchte ich mir für diese Aufgabe in keinem Fall antun)
-
- Beiträge: 768
- Registriert: Mo 4. Mai 2009, 13:24
- OS, Lazarus, FPC: Arch Linux, Lazarus 1.3 r44426M FPC 2.6.4
- CPU-Target: x86_64-linux-qt/gtk2
- Kontaktdaten:
Re: TAR Archiver/Unarchiver
"Getart" wird doch nur unter Unix und da ist das Programm tar sicher immer verfügbar. Reicht dann nicht ein TProcess?
Etwas OT: Ich habe hier im Forum eine Unit myzipper.pp gefunden, die sich hervorragend benutzen lässt. Im Zip könnten auch mehrere Dateien Platz finden.
Etwas OT: Ich habe hier im Forum eine Unit myzipper.pp gefunden, die sich hervorragend benutzen lässt. Im Zip könnten auch mehrere Dateien Platz finden.
-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
Re: TAR Archiver/Unarchiver
Ja, tar pipen wäre eine Lösung, und ich schreibe auch schon daran... Etwas "natives" für Pascal hätte ich natürlich besser gefunden... Danke!
ZIP kommt für den Einsatzzweck aktuell nicht in Frage.
ZIP kommt für den Einsatzzweck aktuell nicht in Frage.
-
- Beiträge: 1102
- Registriert: Di 5. Aug 2008, 09:37
- OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
- CPU-Target: 32/64,PPC(+64), ARM
- Wohnort: Eindhoven (Niederlande)
Re: TAR Archiver/Unarchiver
libtar fixen?
Libtar gibts auch in FPC's SVN. (fcl-base glaube ich)
Libtar gibts auch in FPC's SVN. (fcl-base glaube ich)
-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
Re: TAR Archiver/Unarchiver
Leider kann das auch nur maximal 100 Zeichen archivieren...
Wie kann ich bei GNU tar den Namen der Datei im TAR-Archiv angeben?
Im TAR archiv ist test.txt dann in genau der gleichen Ordnerstruktur gespeichert, wie sie auf der Platte lag. (test.txt in home/xyz/) Ich will aber vorgeben, wie die Datei im TAR-Archiv heißen soll.
Kennt jemand die nötigen Parameter dafür?
Wie kann ich bei GNU tar den Namen der Datei im TAR-Archiv angeben?
Code: Alles auswählen
tar --append --file=test.tar /home/xyz/test.txt
Kennt jemand die nötigen Parameter dafür?
-
- Beiträge: 768
- Registriert: Mo 4. Mai 2009, 13:24
- OS, Lazarus, FPC: Arch Linux, Lazarus 1.3 r44426M FPC 2.6.4
- CPU-Target: x86_64-linux-qt/gtk2
- Kontaktdaten:
Re: TAR Archiver/Unarchiver
Geht das überhaupt mit irgendeinem Packprogramm? Widerspricht doch dem Zweck... http://linux.die.net/man/1/tar" onclick="window.open(this.href);return false;Wie kann ich bei GNU tar den Namen der Datei im TAR-Archiv angeben?
Umbenennen vorher und zurück benennen nach dem einpacken wäre ansonsten eine Lösung.
-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
Re: TAR Archiver/Unarchiver
Ich glaube ich habe eine Lösung gefunden (wenn ich das -C-Parameter zweckentfremde und die Dateien in eine extra Struktur kopiere)
Danke!
Danke!
-
- Beiträge: 475
- Registriert: Do 15. Nov 2007, 16:58
- OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
- CPU-Target: i386, x64
- Wohnort: Gera
Re: TAR Archiver/Unarchiver
Genauer gesagt wird es so archiviert wie du es im Befehl angegeben hast. Willst du nur den letzten Ordner "xyz/" haben musst du vorher dein Arbeitsverzeichnis mit ChDir wechseln und den Befehl entsprechend anpassen.Targion hat geschrieben:Im TAR archiv ist test.txt dann in genau der gleichen Ordnerstruktur gespeichert, wie sie auf der Platte lag. (test.txt in home/xyz/) Ich will aber vorgeben, wie die Datei im TAR-Archiv heißen soll.Code: Alles auswählen
tar --append --file=test.tar /home/xyz/test.txt
Code: Alles auswählen
..
chdir('/home');
TProcess1.CommandLine:='tar --append --file=test.tar /xyz/test.txt';
TProcess1.Execute;
..
mfg Ingo
-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
Re: TAR Archiver/Unarchiver
Genau so mache ich das auch! (nur dass ich anstelle von chdir das -C-Parameter verwende)