Αναγνώστες σαν εσάς βοηθούν στην υποστήριξη του MUO. Όταν κάνετε μια αγορά χρησιμοποιώντας συνδέσμους στον ιστότοπό μας, ενδέχεται να κερδίσουμε μια προμήθεια θυγατρικών. Διαβάστε περισσότερα.

Το csplit είναι ένα δημοφιλές βοηθητικό πρόγραμμα γραμμής εντολών Linux που χρησιμοποιείται για να χωρίσει τα περιεχόμενα ενός αρχείου στα δύο. Το αρχείο που πρέπει να αλλάξετε πρέπει να είναι αρχείο κειμένου με ".κείμενο"επέκταση.

Η εντολή είναι εύκολη στη χρήση και λειτουργεί καλά σε όλες τις διανομές Linux. Με τη χρήση διαφορετικών σημαιών που διατίθενται για csplit, μπορείτε επίσης να τροποποιήσετε την έξοδο ανάλογα με τις ανάγκες σας.

Δείτε πώς μπορείτε να χρησιμοποιήσετε το csplit για να χωρίσετε ένα αρχείο στο Linux.

Τι είναι το csplit;

Χρησιμοποιείται σε Linux και άλλα λειτουργικά συστήματα παρόμοια με το Unix, το csplit μπορεί να χωρίσει ένα αρχείο σε μεμονωμένα αρχεία που καθορίζονται από τις γραμμές περιβάλλοντος.

Η βασική σύνταξη της εντολής είναι:

csplit[ΕΠΙΛΟΓΗ][ΠΡΟΤΥΠΟ]

csplit vs. διαίρεση

instagram viewer

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

Αυτό δεν είναι εφικτό σε σενάρια όπου θέλετε να χωρίσετε τα αρχεία με βάση το περιεχόμενό τους και όχι το μέγεθός τους. Αυτό συμβαίνει όταν το csplit έρχεται στη διάσωση καθώς χωρίζει το αρχείο σε κομμάτια σταθερού μεγέθους με βάση το περιεχόμενο αντί για τον αριθμό των byte.

Πώς να εγκαταστήσετε το csplit σε Linux

Το csplit έρχεται προεγκατεστημένο σε όλες σχεδόν τις διανομές Linux. Ωστόσο, εάν αντιμετωπίζετε ένα σφάλμα "csplit: η εντολή δεν βρέθηκε", αυτό σημαίνει ότι το εργαλείο δεν είναι εγκατεστημένο στο σύστημά σας. Για να εγκαταστήσετε το csplit στο Ubuntu, εκτελέστε:

sudo apt-παίρνω εγκατάσταση coreutils

Στο Arch Linux, εκτελέστε:

sudo pacman -S coreutils

Για να εγκαταστήσετε το csplit σε Fedora και RHEL:

sudo dnf εγκαθιστώ coreutils

Πώς να χρησιμοποιήσετε το csplit στο Linux

Για να δείτε πώς λειτουργεί το csplit, δημιουργήστε ένα αρχείο κειμένου στο σύστημά σας. Χρήση την εντολή αφής για να δημιουργήσετε ένα κενό αρχείο.

αφήόνομα αρχείου.κείμενο

Αφού δημιουργήσετε το αρχείο, ανοίξτε το με το nano editor για να τροποποιήσετε το περιεχόμενό του.

νανοόνομα αρχείου.κείμενο

Αφού προσθέσετε κάποιο περιεχόμενο στο αρχείο, πατήστε Ctrl + X και μετά Υ για να το αποθηκεύσετε και να το κλείσετε.

Για να επαληθεύσετε τα περιεχόμενα του αρχείου χρησιμοποιώντας η εντολή της γάτας, τρέξιμο:

όνομα αρχείου cat

Χρησιμοποιήστε την εντολή csplit για να χωρίσετε ένα αρχείο

Για να κατανοήσετε πώς λειτουργεί το csplit, κοιτάξτε πρώτα τα περιεχόμενα του αρχείου που χρησιμοποιείται εδώ ως παράδειγμα.

Το αρχείο περιέχει εννέα γραμμές από τους αριθμούς 1 έως 9. Εάν πρέπει να χωρίσετε το αρχείο στα δύο, πώς θα πείτε στο csplit ποια περιεχόμενα να στείλετε στο πρώτο αρχείο και ποια στο άλλο; Αυτό είναι εύκολο. Στην εντολή, πρέπει απλώς να πείτε στο csplit από ποια γραμμή θα ξεκινήσει το split.

Αυτό γίνεται με τον καθορισμό του αριθμού γραμμής. Για παράδειγμα, εάν θέλετε να χωρίσετε το αρχείο από την τρίτη γραμμή με τη λέξη "London", θα αναφέρετε το 3 στην εντολή. Εισαγάγετε την εντολή ως εξής:

csplitόνομα αρχείου.κείμενο 3

Αυτή η εντολή θα χωρίσει αμέσως το αρχείο στα δύο. Χρήση την εντολή ls για να καταγράψετε όλα τα περιεχόμενα του καταλόγου για να δείτε τα αρχεία εξόδου. Θα βρείτε τα νέα αρχεία με τα ονόματα xx00 και xx01 μαζί με το αρχικό αρχείο.

Χρησιμοποιήστε την εντολή cat για να επαληθεύσετε τα περιεχόμενα και των δύο αρχείων.

Όπως μπορείτε να δείτε, το csplit χωρίζει το αρχείο σε δύο μέρη από την τρίτη γραμμή όπως ορίζεται στην εντολή.

Οι επιλογές εντολών csplit

Ακολουθούν μερικές από τις επιλογές της γραμμής εντολών csplit που μπορείτε να χρησιμοποιήσετε:

1. Αλλάξτε το πρόθεμα για τα αρχεία εξόδου

Επίσης γνωστό ως το πρόθεμα σημαία, -φά τροποποιεί το πρόθεμα στο όνομα αρχείου. Ίσως έχετε παρατηρήσει ότι όταν το csplit χωρίζει το αρχείο, τα νέα αρχεία που δημιουργούνται έχουν xx ως πρόθεμα στα ονόματα αρχείων. Μπορείτε να το αλλάξετε χρησιμοποιώντας το -φά σημαία στην εντολή.

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

csplit-φάαλφάβητοόνομα αρχείου.κείμενο 3

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

2. Διατηρήστε τα αρχεία όταν εμφανίζονται σφάλματα

ο ή το --keep-files Η επιλογή δεν αφαιρεί τα αρχεία εξόδου εάν υπάρχει σφάλμα στην εντολή csplit.

Εκδώστε την ακόλουθη ελαττωματική εντολή:

csplit -k randomfile.txt 2 {3}

3. Τροποποιήστε τον αριθμό των ψηφίων στο όνομα αρχείου

Χρησιμοποιώντας αυτήν την επιλογή, μπορείτε να πείτε στην εντολή csplit πόσα ψηφία θέλετε να δείτε στο όνομα του αρχείου ακολουθώντας το πρόθεμα. Ονομάζεται επίσης σημαία ψηφίων.

Εκδώστε την ακόλουθη εντολή για να διατηρήσετε μόνο ένα ψηφίο στο όνομα αρχείου:

csplit-n 1 τυχαίο αρχείο.κείμενο 2

Χωρίς το -n flag, από προεπιλογή, θα δείτε δύο ψηφία στο όνομα του αρχείου.

4. Διαχωρίστε το αρχείο χωρίς εξαγωγή μέτρησης μεγέθους

Γνωστή και ως η ήσυχη σημαία, η -μικρό Το flag διαχωρίζει σιωπηλά το αρχείο χωρίς να αναφέρει τον αριθμό μεγεθών των αρχείων εξόδου.

csplit-μικρότυχαίο αρχείο.κείμενο 3

5. Προβολή Βοήθειας γραμμής εντολών

Για να δείτε λεπτομέρειες για όλες τις διαθέσιμες επιλογές για csplit, χρησιμοποιήστε το ή --βοήθεια σημαία στην εντολή.

csplit --βοήθεια

6. Ελέγξτε τον αριθμό έκδοσης csplit

Για να δείτε ποια έκδοση του csplit χρησιμοποιείτε, εκτελέστε την εντολή με το --εκδοχή σημαία:

csplit --εκδοχή

7. Παραλείψτε μια συγκεκριμένη γραμμή κατά τη διαίρεση

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

csplit--καταπιέζω-ταιριάζουνόνομα αρχείου.κείμενο 5

Κατά τη δημιουργία των δύο αρχείων, το csplit θα αγνοήσει την πέμπτη γραμμή και θα διαχωρίσει το αρχείο από την επόμενη γραμμή.

Η πέμπτη γραμμή στο αρχικό αρχείο έχει τη λέξη "Berlin". Στο αρχείο εξόδου, το "Berlin" παραλείφθηκε.

Διαχωρίστε τα αρχεία χωρίς κόπο με μια μόνο εντολή στο Linux

Υπάρχουν πολλά βοηθητικά προγράμματα γραμμής εντολών διαθέσιμα για τη διαχείριση αρχείων σε ένα σύστημα Linux. Ένα από αυτά είναι το csplit. Από προεπιλογή, είναι διαθέσιμο σε όλα τα συστήματα Linux. Εάν όχι, μπορείτε απλά να το εγκαταστήσετε μέσω της γραμμής εντολών.

Το csplit είναι ένας εύκολος και αποτελεσματικός τρόπος για να χωρίσετε ένα αρχείο όταν πρέπει να διαιρέσετε το αρχείο με βάση το περιεχόμενό του. Το csplit συνοδεύεται από διάφορες επιλογές γραμμής εντολών που σας προσφέρουν την ευελιξία να προσαρμόσετε την έξοδο με τον τρόπο που θέλετε. Υπάρχουν πολλά εργαλεία γραμμής εντολών για να προβάλετε το περιεχόμενο ενός αρχείου στο Linux, εάν θέλετε να ελέγξετε τα αρχεία μετά τον διαχωρισμό.