Come comprimo una directory?


163

Sto cercando di comprimere una directory e ftp in un ftp di Windows.

Ho provato tutti i comandi tar che riesco a trovare per comprimere una directory. Sembra essere ok. Quindi lo trasferisco e visualizzo i suoi contenuti utilizzando Winrar. Winrar continua a dirmi che il file è danneggiato. Ho visto altri file .gz o .bz2 usando winrar ma per qualche strana ragione non riesco a farlo funzionare.

Preferirei solo comprimere i file in modo che abbiano un'estensione .zip ma anche allora quando provo a sfogliare i suoi contenuti sia Windows che Winrar affermano che è corrotto.

Qualcun altro ha un suggerimento su qualcos'altro da provare?


(1) quale comando tar esatto stai usando? (2) puoi decomprimere il file risultante?
djeikyb,

Prova a usare 7zip per visualizzare il file in Windows.
Oxwivi,

Risposte:


283

Bene, molto probabilmente i tuoi file vanno benissimo prima della trasmissione FTP.

Sfortunatamente, probabilmente stai trasferendo i tuoi file usando una modalità FTP errata.

FTP ha due modalità: binaria e ASCII. Per impostazione predefinita, la maggior parte dei client utilizza la modalità ASCII, che interrompe completamente i file binari. Non so quale client FTP stai usando, ma ad esempio in ncftp puoi usare il comando "binary" per passare alla modalità binaria.

Se vuoi creare file ZIP usando Ubuntu (o quasi qualsiasi altro Linux), usa zip. Puoi installarlo su Ubuntu eseguendolo

sudo apt-get install zip

Quindi è possibile creare il file zip eseguendo

zip -r compressed_filename.zip foldername

Sulla nota correlata, dovresti sapere che FTP è un protocollo di trasmissione non sicuro. Considerare il passaggio a sftp, ad esempio. Esistono molti server ssh gratuiti per Windows, inclusa la porta minima OpenSSH .


Un buon punto in genere mi sono affidato al client / server per rilevare automaticamente la modalità ASCII vs binaria e non ho avuto problemi, quindi non ho mai pensato che fosse un potenziale problema. Ho anche eseguito zip prima e tutto è apparso bene fino a quando ho provato a vederlo. Probabilmente a causa della cosa binaria / ascii.
dal

Comunque wow grazie, mi sento un idiota ora che era così semplice. Avrei dovuto saperlo. Comunque grazie per il suggerimento su ssh per Windows, alla fine stavo per passare a quello, ma so che ftp per Windows lancia un minor numero di variabili nel fattore di test e sviluppo.
dal

48

Campression può essere fatto usando tar, zip, p7 e persino rar in Ubuntu. Sarà necessario installare rar per l'archiviazione rar. Basta fare clic con il pulsante destro del mouse per visualizzare le opzioni per la compressione con gli archivi installati. inserisci qui la descrizione dell'immagine

Se vuoi usare "zip" per l'estensione .zip puoi vedere il manuale di zip. La riga di comando per l'utilizzo di tar è:

tar cvzf tarball.tar.gz directory/

1
Tema fantastico! Come si chiama?
Elliott Darfink,

c'è qualche "-q" per "piuttosto mode"?
MatheusJardimB,

2
@MatheusJardimB elimina l'opzione vtar czf tarball.tar.gz directory/
Adam,

3

La compressione delle directory, l'uso della compressione parallela è un modo efficiente per risparmiare tempo. pbzip2 può aiutarti a comprimere le directory.

tar cf <outputfile_name> --use-compress-prog=pbzip2 <directory_name>
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.