Frage

ich dann auf Teer und dann eine Liste von Dateien in C # gzip.

Ich brauche Hilfe mit, wie die Argumente Teer zu setzen.

Sagen wir, ich habe in einem Ordner c tar.exe: \ tar \ tar.exe und ein Verfahren wie folgt aus:

    private void RunTar(string outputFileName, List<string> fileNamePaths)
    {
        using (Process p = new Process())
        {
            p.StartInfo.FileName = @"c:\tar\tar.exe";
            p.StartInfo.Arguments = //;
            p.Start();
            p.WaitForExit();
        }
    }

. Hinweis: die fileNamePathsToTar Liste hat die vollen unc Dateinamen Pfade und die Dateien in verschiedenen Ordnern sein

Kann mir jemand bitte helfen Sie mit dem, was Argumente zu liefern.

Beachten Sie auch, ich in der Dokumentation:

-z, --gzip, --ungzip
          filter the archive through gzip

   -Z, --compress, --uncompress
          filter the archive through compress

   --use-compress-program=PROG
          filter through PROG (must accept -d)

Nicht sicher, wie diese verwenden, aber wenn ich die gzip.exe im selben Ordner platzieren, wie tar.exe kann ich meinen Teer durchführen und dann gzip diese Dateien in einem Schritt

Aktualisieren

Ich kann nur scheinen Teer zu bekommen auf Dateien im selben Verzeichnis wie tar.exe zu arbeiten, wenn ich einen vollständigen Pfadnamen versuche ich so etwas wie:

    C:\Tar Test>tar -cf out.tar c:/Tar Test/Text/t1.txt
tar: Cannot add file c:/Tar: No such file or directory
tar: Cannot add file Test/Text/t1.txt: No such file or directory
tar: Error exit delayed from previous errors

Ich habe in beiden Richtungen mit den Schrägstrichen versucht \ oder / und mit Anführungszeichen um den vollständigen Pfad keine Freude.

Danke

War es hilfreich?

Lösung

ein Archiv zu erstellen und gzip es, sollten Sie czf als Argumente verwenden, so

p.StartInfo.Arguments = "czf";

oder

p.StartInfo.Arguments = "-czf";

je nach tar-Version.

vermeiden Gzipping, entfernen Sie die 'z' von den Argumenten.

ah, und Sie würden besser Teer eines ganzen Ordner, wie setzen alle Dateien in einem Ordner mit dem Namen, zum Beispiel myfolder und Teer auf den Ordner, nicht, es ist Inhalt.

Andere Tipps

FYI, gibt es eine verwaltete tar Bibliothek mit voller Quelle verfügbar unter http://cheeso.members.winisp.net/srcview. aspx? dir = Tar & file = Tar.cs

Es gibt eine Make-Datei, damit Sie Tar.dll oder tar.exe zu bauen. Es gibt auch eine Beispielanwendung in VB.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top