Τρόπος συμπίεσης (και αποσυμπίεσης) αρχείων χρησιμοποιώντας το PowerShell

Η μορφή αρχείου ZIP μειώνει το μέγεθος των αρχείων συμπιέζοντάς τα σε ένα μόνο αρχείο. Αυτή η διαδικασία εξοικονομεί χώρο στο δίσκο, κρυπτογραφεί δεδομένα και διευκολύνει την κοινή χρήση αρχείων με άλλους. Δείτε πώς να κάνετε συμπίεση και αποσυμπίεση αρχείων χρησιμοποιώντας το PowerShell.

Τρόπος συμπίεσης αρχείων χρησιμοποιώντας το PowerShell

Ας ξεκινήσουμε με τη συμπίεση ορισμένων αρχείων σε ένα αρχείο ZIP χρησιμοποιώντας το cmdlet Compress-Archive. Παίρνει τη διαδρομή προς όλα τα αρχεία που θέλετε να συμπιέσετε—πολλά αρχεία χωρίζονται με κόμμα—και τα αρχειοθετεί στον προορισμό που έχετε καθορίσει.

Αρχικά, ανοίξτε το PowerShell αναζητώντας το από το μενού Έναρξη και, στη συνέχεια, πληκτρολογώντας την ακόλουθη εντολή, αντικαθιστώντας και με τη διαδρομή προς τα αρχεία που θέλετε να συμπιέσετε και το όνομα και τον φάκελο που θέλετε να μεταβεί, αντίστοιχα:

Compress-Archive -LiteralPath  -DestinationPath 

Όταν παρέχετε τη διαδρομή προορισμού, φροντίστε να δώσετε στο αρχείο αρχειοθέτησης ένα όνομα ή το PowerShell θα το αποθηκεύσει ως “.zip” όπου καθορίζετε.

Σημείωση: Οι εισαγωγές γύρω από τη διαδρομή είναι απαραίτητες μόνο όταν η διαδρομή αρχείου περιέχει κενό.

Εναλλακτικά, για να κάνετε συμπίεση ολόκληρου του περιεχομένου ενός φακέλου —και όλων των υποφακέλων του— μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή, αντικαθιστώντας και με τη διαδρομή προς τα αρχεία που θέλετε να συμπιέσετε και το όνομα και τον φάκελο στον οποίο θέλετε να μεταβείτε, αντίστοιχα:

Compress-Archive -LiteralPath  -DestinationPath 

Στο προηγούμενο παράδειγμα, βάλαμε τη διαδρομή σε έναν κατάλογο με πολλά αρχεία και φακέλους χωρίς να προσδιορίσουμε μεμονωμένα αρχεία. Το PowerShell παίρνει τα πάντα μέσα στον ριζικό κατάλογο και τον συμπιέζει, τους υποφακέλους και όλα.

  Πώς να εκκινήσετε αυτόματα τις συντομεύσεις όταν ανοίγετε μια εφαρμογή σε iPhone ή iPad

Το cmdlet Compress-Archive σάς επιτρέπει να χρησιμοποιήσετε έναν χαρακτήρα μπαλαντέρ

για να επεκτείνετε ακόμη περισσότερο τη λειτουργικότητα. Όταν χρησιμοποιείτε τον χαρακτήρα, μπορείτε να εξαιρέσετε τον ριζικό κατάλογο, να συμπιέσετε μόνο αρχεία σε έναν κατάλογο ή να επιλέξετε όλα τα αρχεία ενός συγκεκριμένου τύπου. Για να χρησιμοποιήσετε έναν χαρακτήρα μπαλαντέρ με το Compress-Archive, πρέπει να χρησιμοποιήσετε την παράμετρο -Path, καθώς το -LiteralPath δεν τους αποδέχεται.

Compress-Archive -Path C:pathtofile* -DestinationPath C:pathtoarchive.zip

Παραπάνω, καλύψαμε πώς να συμπεριλάβετε τον ριζικό κατάλογο και όλα τα αρχεία και τους υποκαταλόγους του κατά τη δημιουργία ενός αρχείου αρχειοθέτησης. Ωστόσο, εάν θέλετε να εξαιρέσετε τον ριζικό φάκελο από το αρχείο Zip, μπορείτε να χρησιμοποιήσετε έναν χαρακτήρα μπαλαντέρ για να τον παραλείψετε από το αρχείο. Προσθέτοντας έναν αστερίσκο

Compress-Archive -Path C:pathtofile*.jpg -DestinationPath C:pathtoarchive.zip

μέχρι το τέλος της διαδρομής του αρχείου, λέτε στο PowerShell μόνο να αρπάξει ό,τι βρίσκεται μέσα στον ριζικό κατάλογο. Θα πρέπει να μοιάζει κάπως έτσι:

Στη συνέχεια, ας πούμε ότι έχετε έναν φάκελο με μια δέσμη διαφορετικών τύπων αρχείων (.doc, .txt, .jpg, κ.λπ.) αλλά θέλετε να συμπιέσετε όλους μόνο ενός τύπου. Μπορείτε να πείτε στο PowerShell να τα αρχειοθετήσει χωρίς να αγγίξετε ρητά τα άλλα. Η σημείωση της εντολής θα μοιάζει με αυτό:

Compress-Archive -Path C:pathtofile*.* -DestinationPath C:pathtoarchive.zip

Σημείωση: Οι υποκατάλογοι και τα αρχεία του ριζικού φακέλου δεν περιλαμβάνονται στο αρχείο με αυτήν τη μέθοδο.

  Πώς να προσαρμόσετε την επιφάνεια εργασίας του KDE

Τέλος, εάν θέλετε ένα αρχείο που συμπιέζει μόνο αρχεία στον ριζικό κατάλογο—και όλους τους υποκαταλόγους του—θα χρησιμοποιούσατε τον χαρακτήρα μπαλαντέρ star-dot-star (*.*) για να τα συμπιέσετε. Θα φαινόταν κάπως έτσι:

Compress-Archive -Path C:pathtofiles -Update -DestinationPath C:pathtoarchive.zip

Σημείωση: Οι υποκατάλογοι και τα αρχεία του ριζικού φακέλου δεν περιλαμβάνονται στο αρχείο με αυτήν τη μέθοδο.

Ακόμη και μετά την ολοκλήρωση της αρχειοθέτησης, μπορείτε να ενημερώσετε ένα υπάρχον συμπιεσμένο αρχείο με τη χρήση της παραμέτρου -Update. Σας επιτρέπει να αντικαταστήσετε παλαιότερες εκδόσεις αρχείων στο αρχείο με νεότερες που έχουν τα ίδια ονόματα και να προσθέσετε αρχεία που έχουν δημιουργηθεί στον ριζικό κατάλογο. Θα μοιάζει κάπως έτσι:

Πώς να αποσυμπιέσετε αρχεία χρησιμοποιώντας το PowerShell Εκτός από τη δυνατότητα συμπίεσης αρχείων και φακέλων, το PowerShell έχει τη δυνατότητα να αποσυμπιέζει αρχεία. Η διαδικασία είναι ακόμα πιο εύκολη από τη συμπίεση τους. Το μόνο που χρειάζεστε είναι το αρχείο προέλευσης και ένας προορισμός για τα δεδομένα έτοιμα προς αποσυμπίεση. Ανοίξτε το PowerShell και πληκτρολογήστε την ακόλουθη εντολή, αντικαθιστώντας

Expand-Archive -LiteralPath  -DestinationPath 

και

  Πώς μπορώ να βρω λογισμικό που λείπει στο Ubuntu;

με τη διαδρομή προς τα αρχεία που θέλετε να συμπιέσετε και το όνομα και τον φάκελο στον οποίο θέλετε να μεταβείτε, αντίστοιχα:

Ο φάκελος προορισμού που έχει καθοριστεί για εξαγωγή των αρχείων θα συμπληρωθεί με τα περιεχόμενα του αρχείου. Εάν ο φάκελος δεν υπήρχε πριν από την αποσυμπίεση, το PowerShell θα δημιουργήσει τον φάκελο και θα τοποθετήσει τα περιεχόμενα σε αυτόν πριν αποσυμπιεστεί.

Από προεπιλογή, εάν παραλείψετε την παράμετρο -DestinationPath, το PowerShell θα αποσυμπιέσει τα περιεχόμενα στον τρέχοντα ριζικό κατάλογο και θα χρησιμοποιήσει το όνομα του αρχείου Zip για να δημιουργήσει έναν νέο φάκελο.

Στο προηγούμενο παράδειγμα, αν αφήσουμε έξω το -DestinationPath , το PowerShell θα δημιουργήσει τον φάκελο “Archive” στη διαδρομή “C:Usersbrady” και θα εξαγάγει τα αρχεία από το αρχείο στο φάκελο.

Εάν ο φάκελος υπάρχει ήδη στον προορισμό, το PowerShell θα επιστρέψει ένα σφάλμα όταν προσπαθήσει να αποσυμπιέσει τα αρχεία. Ωστόσο, μπορείτε να αναγκάσετε το PowerShell να αντικαταστήσει τα δεδομένα με τα νέα χρησιμοποιώντας την παράμετρο -Force.

Θα πρέπει να χρησιμοποιείτε την παράμετρο -Force μόνο εάν τα παλιά αρχεία δεν χρειάζονται πλέον, καθώς αυτό θα αντικαταστήσει μη αναστρέψιμα τα αρχεία στον υπολογιστή σας.