Γιαούρτι Δημοσ. 31 Μαρτίου 2019 Share Δημοσ. 31 Μαρτίου 2019 έχω έναν φάκελο ο οποίος περιέχει αρκετούς υποφακέλους με αρχεία. ίσως είναι και 100+ (οι φάκελοι, όχι τα αρχεία) θέλω όλους αυτούς τους φακέλους να τους συμπιέσω, κάθε φάκελος και ξεχωριστό αρχείο. θα μπορούσα να τους κάνω έναν έναν χειροκίνητα αλλά είναι μεγάλος ο όγκος και κάθε αρχείο μπορεί να πάρει 5+λεπτά να συμπιεστεί. άρα πρέπει να είμαι όλη μέρα πάνω από τον υπολογιστή ψάχνω αν υπάρχει τρόπος, με κάποια εντολή να γίνει όλη αυτή η διαδικασία αυτόματα. Να αφήσω τον υπολογιστή και μετά από κάποιες ώρες να έχω τα αρχεία έτοιμα συμπιεσμένα. το format που θέλω είναι tar. (με συμπίεση lzma κατά προτίμηση) όλα αυτά σε lubuntu. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
jim_p Δημοσ. 31 Μαρτίου 2019 Share Δημοσ. 31 Μαρτίου 2019 (επεξεργασμένο) Με μια εντολη δεν γινεται. Θα κανεις ενα sh σκριπτ με οσα λεει εδω και θα το τρεξεις στο φακελο που εχει μεσα τους φακελους που θες να συμπιεσεις https://serverfault.com/questions/97763/linux-gzip-multiple-subdirectories-into-separate-archives Επεξ/σία 31 Μαρτίου 2019 από jim_p Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
NullScan Δημοσ. 1 Απριλίου 2019 Share Δημοσ. 1 Απριλίου 2019 (επεξεργασμένο) Κάτι τέτοιο ψάχνεις δηλαδή; find . -maxdepth 1 -type d -exec tar cjf {}.tar.bz2 {} \; αφού έχεις κάνει cd μέσα στο parent directory Επεξ/σία 1 Απριλίου 2019 από NullScan 2 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Γιαούρτι Δημοσ. 7 Απριλίου 2019 Μέλος Share Δημοσ. 7 Απριλίου 2019 Στις 1/4/2019 στις 10:09 ΠΜ, NullScan είπε Κάτι τέτοιο ψάχνεις δηλαδή; find . -maxdepth 1 -type d -exec tar cjf {}.tar.bz2 {} \; αφού έχεις κάνει cd μέσα στο parent directory ωραίος, αυτό ήθελα. λειτουργεί λίγο περίεργα, δημιουργεί ένα μεγάλο αρχείο και μετά δημιουργούνται τα ξεχωριστά. τα συμπιέζει όλα μαζί και μετά τα χωρίζει; δε κατάλαβα τι κάνει αλλά δουλεύει. αν ήθελα συμπίεση lzma? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
e-tic Δημοσ. 7 Απριλίου 2019 Share Δημοσ. 7 Απριλίου 2019 (επεξεργασμένο) Σε παρόμοια κατάσταση έφτιαξα το παρακάτω script που πέρα απο συμπίεση κάνει και encryption: #!/bin/bash for dir in $( ls ) do if [ -d $dir ]; then echo "Compresing "$dir tar cJf $dir.tar.xz $dir echo "Encrypting "$dir echo "insert_password_here" | gpg --batch -q --passphrase-fd 0 --cipher-algo AES256 -c $dir.tar.xz echo "Removing "$dir rm $dir.tar.xz fi done Επεξ/σία 7 Απριλίου 2019 από e-tic Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
NullScan Δημοσ. 8 Απριλίου 2019 Share Δημοσ. 8 Απριλίου 2019 (επεξεργασμένο) 22 ώρες πριν, Γιαούρτι είπε ωραίος, αυτό ήθελα. λειτουργεί λίγο περίεργα, δημιουργεί ένα μεγάλο αρχείο και μετά δημιουργούνται τα ξεχωριστά. τα συμπιέζει όλα μαζί και μετά τα χωρίζει; δε κατάλαβα τι κάνει αλλά δουλεύει. αν ήθελα συμπίεση lzma? Αν θέλεις lzma τότε προσθέτεις το switch --lzma στο tar. Όχι δεν κάνει ένα μεγάλο, παίρνει κάθε φάκελο ξεχωριστά στο directory από το οποίο τρέχες την εντολή και τον συμπιέζει με όλα του τα περιεχόμενα. Αν κατάλαβα καλά αυτό ήθελες. EDIT: ξέχασα να προσθεσω το exclude του local directory, γι αυτό σου συμπιέζει και όλο το current directory μαζί με τα subfolders. Το σωστό syntax είναι έτσι find . -maxdepth 1 -not -path '.' -type d -exec tar cjf {}.tar.bz2 {} \; Επεξ/σία 8 Απριλίου 2019 από NullScan 1 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
_chris_ Δημοσ. 27 Δεκεμβρίου 2019 Share Δημοσ. 27 Δεκεμβρίου 2019 Στις 8/4/2019 στις 11:43 ΠΜ, NullScan είπε Αν θέλεις lzma τότε προσθέτεις το switch --lzma στο tar. Όχι δεν κάνει ένα μεγάλο, παίρνει κάθε φάκελο ξεχωριστά στο directory από το οποίο τρέχες την εντολή και τον συμπιέζει με όλα του τα περιεχόμενα. Αν κατάλαβα καλά αυτό ήθελες. EDIT: ξέχασα να προσθεσω το exclude του local directory, γι αυτό σου συμπιέζει και όλο το current directory μαζί με τα subfolders. Το σωστό syntax είναι έτσι find . -maxdepth 1 -not -path '.' -type d -exec tar cjf {}.tar.bz2 {} \; επειδή με ενδιαφέρει κι εμένα το θέμα και είμαι άσχετος από linux, πως ακριβώς θα ήταν η εντολή σε αυτή την περίπτωση; με συμπίεση Lzma εννοώ. Νομίζω αυτή είναι η καλύτερη συμπίεση σωστά; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
NullScan Δημοσ. 7 Ιανουαρίου 2020 Share Δημοσ. 7 Ιανουαρίου 2020 tar cf --lzma {}.tar.lzma {} \; στο τέλος αλλά από μνήμης εντελώς. σίγουρα το γράφει το man Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Bitbit Δημοσ. 5 Ιουλίου 2022 Share Δημοσ. 5 Ιουλίου 2022 θέλω να κάνω ακριβώς το ανάποδο. Μέχρι τώρα χρησιμοποιώ το peazip. Το πρόβλημα είναι ότι έχω αρκετά αρχεία *.tar.bz2, κάνω ομαδικό extract με το peazip και μου τα αποσυμπιέζει σε tar και άντε πάλι να τα αποσυμπιέσω. Πως μπορώ με τη μια να κάνω αυτή την κίνηση; Δε με νοιάζει αν είναι από γραμμή εντολών. Βασικά το προτιμώ. Είναι πολλά τα αρχεία και δε γίνεται χειροκίνητα Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
angmar Δημοσ. 5 Ιουλίου 2022 Share Δημοσ. 5 Ιουλίου 2022 Κάτι τέτοιο; cat *.tar.bz2 | tar jxvf - -i Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα