Εντολές επεξεργασίας κειμένου (text) : sed (stream ή script editor), cut, paste, tr, sort, uniq Εντολές αναζήτησης : file, find 6ο ΕΡΓΑΣΤΗΡΙΟ ΛΕΙΤΟΥΡΓΙΚΑ.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΕΡΩΤΗΜΑΤΑ ΕΠΙΛΟΓΗΣ ΜΑΘΗΜΑ 6. SELECTSELECT SELECT * FROM όνομα_πίνακα ; • Με τη εντολή SELECT ανασύρουμε δεδομένα από την βάση δεδομένων. • Το αστεράκι.
Advertisements

UNIX.
Support.ebsco.com Εκπαιδευτικό μάθημα για τη δημιουργία τοπικής συλλογής.
Κληρονομικότητα. Εισαγωγή  Κληρονομικότητα (Inheritance) καλείται ο μηχανισμός με τον οποίο μία νέα κλάση που ονομάζεται παράγωγη (derived class) δημιουργείται.
Δένδρα van Emde Boas TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μελετάμε την περίπτωση όπου αποθηκεύουμε.
ΚΕΙΜΕΝΟ  Ο πρώτος τρόπος απεικόνισης πληροφορίας (και βασικός ως σήμερα).  Αδυναμία πρώτων υπολογιστών να χειριστούν άλλη μορφή πληροφορίας.  Πρόβλημα.
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
Βάσεις Δεδομένων Μάθημα 3.
Εκκίνηση του MATLAB.
ΜΑΘ 3122 (106) Γλώσσα προγραμματισμού
Microsoft Excel 4.2 Κελιά Κίκα Χρυσοστόμου.
Φροντηστήριο Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Eργαλεία.
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
Γλωσσική Τεχνολογία String Handling – Regular Expressions.
Regular Expressions. Regular Expressions - γενικά  Βασική ιδέα: έχουμε ένα pattern και ένα κείμενο εισόδου. Εφαρμόζουμε το pattern στο κείμενο και μπορούμε:
Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων.
Στο λειτουργικό σύστημα Windows, υπάρχουν εικονίδια (icons) τα οποία αναπαριστούν τις διάφορες οντότητες (φυλαγμένες πληροφορίες, προγράμματα που κάνουν.
1 ΕΝΤΟΛΕΣ ΠΛΗΡΟΦΟΡΙΩΝ ΓΕΝΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣΓΕΝΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ ΘΕΣΗ ΣΗΜΕΙΟΥΘΕΣΗ ΣΗΜΕΙΟΥ ΑΠΟΣΤΑΣΗΑΠΟΣΤΑΣΗ ΕΜΒΑΔΟΝΕΜΒΑΔΟΝ.
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΜΑΘΗΜΑ 3.
Εργαστήριο Εφαρμοσμένης Πληροφορικής
ΘΠ06 - Μεταγλωττιστές Πίνακας Συμβόλων. Πίνακας Συμβόλων (Symbol Table) (Ι)  Είναι μια δομή στην οποία αποθηκεύονται τα ονόματα ενός προγράμματος και.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
ΕΣΔ 232: Οργάνωση δεδομένων στην Κοινωνία της Πληροφορίας © 2013 Nicolas Tsapatsoulis Φόρμες Δημιουργία Περιεχομένου Ι.
ΤΗΣ ΦΟΙΤΗΤΡΙΑΣ : ΤΣΑΛΤΑ ΑΝΑΣΤΑΣΙΑ Α.Μ. : 30920
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
ΟΡΓΑΝΩΣΗ ΣΥΣΤΗΜΑΤΟΣ ΑΡΧΕΙΩΝ A’ μέρος
AWK Μία εξαιρετικά δυναμική συμβολική γλώσσα προγραμματισμού και ταυτόχρονα ένα εργαλείο διαχείρισης δεδομένων. Αναζητά, τροποποιεί αρχεία, δημιουργεί.
ΘΠ06 - Μεταγλωττιστές Πίνακας Συμβόλων Φροντιστήριο - 30/04/2009.
Microsoft PowerPoint Powerpoint Κίκα Χρυσοστόμου.
Δομές Δεδομένων.
Ενότητα Α.4. Δομημένος Προγραμματισμός
Microsoft PowerPoint Powerpoint Κίκα Χρυσοστόμου.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
Βάσεις Δεδομένων Εργαστήριο ΙΙ Τμήμα Πληροφορικής ΑΠΘ
Microsoft Excel 4.7 Προετοιμασία Εκτυπώσεων Κίκα Χρυσοστόμου.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
9 Η Γλώσσα SQL  Εισαγωγή – Βασικές Έννοιες  Τύποι Δεδομένων  Ορισμός Δεδομένων (data definition)  Χειρισμός Δεδομένων (data manipulation)
Εισαγωγή στο Linux/Unix Εργαστηριακή Άσκηση 3 Η/Υ 1 ο έτος Γρ. Αμούτζιας.
Εισαγωγή στην Πληροφορική και στην διαχείριση μεγάλου όγκου δεδομένων Γρηγόριος Αμούτζιας Επικ. Καθηγητής Βιοπληροφορικής στη Γενωμική Τμήμα Βιοχημείας.
1Κεφάλαιο 4 Κανόνες Σύνταξης HTML Όλες οι ετικέτες εσωκλείονται μεταξύ των χαρακτήρων “ “. Κάθε τι που βρίσκεται μεταξύ των χαρακτήρων “ ”, αποτελεί σχόλιο.
Ο τελεστής ανάθεσης Ο τελεστής ανάθεσης (=) χρησιμοποιείται για να τοποθετήσουμε το αποτέλεσμα μιας έκφρασης (σταθερά, μεταβλητή ή παράσταση) σε μια μεταβλητή.
Βασικά στοιχεία της Java
Εφαρμογές Πολυμέσων: Εισαγωγή στην HTML (1)
1. 1.Δημιουργία Νέου Αρχείου Επιλέγουμε καρτέλα File, πατούμε στην εντολή New και μετα αφου διαλέξουμε τον τύπo αρχείου (π.χ Blank Document), πατούμε.
Ξεχωριστή Μεταγλώττιση & Χώροι Ονομάτων Αντικειμενοστραφής Προγραμματισμός.
Γλώσσες προγραμματισμού Ένας αλγόριθμος όταν περιγραφεί με μια μορφή που τη δέχεται ένας υπολογιστής, λέγεται πρόγραμμα (prοgram, prοgramme)
ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ. Δυαδική αναζήτηση (Binary search) ΔΕΔΟΜΕΝΟ: ένα μεγάλο αρχείο που περιέχει τιμές z [0,1,…,n-1] ταξινομημένες.
Δημιουργοί ΝΑΤΣΙΟΥΛΗΣ ΓΕΩΡΓΙΟΣ ΠΑΠΑΣ ΑΘΑΝΑΣΙΟΣ ΤΟΣΙΟΣ ΧΡΗΣΤΟΣ
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Δυναμικός Κατακερματισμός
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΠΡΟΧΩΡΗΜΕΝΕΣ ΤΕΧΝΙΚΕΣ
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
ΣΥΝΟΠΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ POWERPOINT
Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος
Εισαγωγή στην Πληροφορική μεγάλου όγκου δεδομένων
Εισαγωγή στην Πληροφορική μεγάλου όγκου δεδομένων
Κεφάλαιο 10 Streams.
Εντολές και δομές αλγορίθμου
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
ΑΝΑΠΑΡΑΣΤΑΣΗ ΧΑΡΑΚΤΗΡΩΝ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Κανονικές εκφράσεις ή παραστάσεις (Regular Expressions)
Β.ΕΠΑΛ-Γενικής Παιδείας  ΜΑΘΗΜΑ: Εισαγωγή στης αρχές Επιστήμης των Η/Υ  ΚΕΦΑΛΑΙΟ 4: Γλώσσες Αναπαράστασης Αλγορίθμων  ΕΝΟΤΗΤΑ 4.2: Δομή Ακολουθίας 
Σχεσιακεσ βασεισ δεδομενων
Ερωτήματα Επιλογής σε ACCESS
Φόρμες Φόρμες χρησιμοποιούνται για να δημιουργήσουμε ένα φιλικό περιβάλλον για την διαχείριση των δεδομένων της βάσης. Επίσης δίνεται η δυνατότητα δημιουργίας.
Εξωτερική Αναζήτηση Ιεραρχία Μνήμης Υπολογιστή Εξωτερική Μνήμη
Δυναμικός Κατακερματισμός
Μεταγράφημα παρουσίασης:

Εντολές επεξεργασίας κειμένου (text) : sed (stream ή script editor), cut, paste, tr, sort, uniq Εντολές αναζήτησης : file, find 6ο ΕΡΓΑΣΤΗΡΙΟ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Εισαγωγή Υπάρχουν αρκετές εντολές στο Unix που διαχειρίζονται δεδομένα σε μορφή κειμένου. Οι εντολές αυτές χρησιμοποιούνται : Σε αρχεία κειμένου (text files) Σε ροές εισόδου (input streams) Λειτουργίες: Αναζήτηση (Searching) Επεξεργασία & διαχείριση (Processing) ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Εντολές αναζήτησης grep egrep fgrep sed find file Αναζητούν πρότυπα κειμένου σε αρχεία find file Αναζήτηση αρχείων το όνομα των οποίων ταιριάζει με το πρότυπο ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Η εντολή sed (stream ή script editor) Χρησιμοποιεί κανονικές εκφράσεις για την αναζήτηση προτύπων σε αρχεία κειμένου. Ο sed είναι δομημένος επάνω σε ένα παλιό editor του Unix, τον ed που είναι ο ίδιος που χρησιμοποιεί η εντολή grep. Είναι απόγονος του ed και χρησιμοποιείται για την υλοποίηση μη-αλληλεπιδραστικών λειτουργιών. Επενεργεί σε ένα αρχείο (ροή) δεδομένων (data stream). Η εντολή είναι αποδοτική σε μεγάλα αρχεία και χρησιμοποιείται με τις τεχνικές της διασωλήνωσης (pipeline) και της αλλαγής προορισμού (ανακατεύθυνση – redirection). Οι λειτουργίες στη sed διαχωρίζονται με άνω τελεία (semicolon). ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Συνηθισμένες εντολές του sed Υποστηρίζει πολλές λειτουργίες επεξεργασίας κειμένου, όπως delete (d), substitute (s), print (p). Στο εργαστήριο η sed θα χρησιμοποιηθεί σε δύο από τις λειτουργίες της : Αντικατάσταση ενός προτύπου από κάποιο άλλο Εξαγωγή μιας ομάδας γραμμών από αρχείο Σημαντικότερη θεωρείται η αντικατάσταση (s -substitution): s/regexp/replacement/ [flags] ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sed – substitution (s) Γενική μορφή της εντολής αντικατάστασης : s/old/new/[flags] (flags : g, n) s = substitute old = old pattern new = new pattern FLAGS g = global (αντικατάσταση όλων σε κάθε γραμμή) n = number (αντικατάσταση των n πρώτων) -e επεξεργάζεται τα αρχεία σύμφωνα με το σενάριο ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Παραδείγματα αντικατάστασης Αντικατάσταση της : στο αρχείο passwd με space $ grep taylor /etc/passwd | sed -e ‘s/Taylor/Tailor/g;s/:/ /g’ taylorj ? 1048 1375 James Tailor /users/taylorj /bin/csh mtaylor ? 769 1375 Mary Tailor /users/mtaylor /usr/local/bin/tcsh dataylor ? 375 518 Dave Tailor /users/dataylor /usr/local/lib/msh taylorjr ? 203 1022 James Tailor /users/taylorjr /bin/csh taylorrj ? 662 1042 Robert Tailor /users/taylorrj /bin/csh taylorm ? 8692 1508 Melanie Tailor /users/taylorm /bin/csh taylor ? 1989 1412 Dave Tailor /users/taylor /bin/csh $ sed -e ‘s/Taylor/Tailor/g;s/:/ /g’ </etc/passwd ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sed 's/^$/this used to be a blank line/' filename sed 's/ $//g' filename Αντικαθιστά οποιοδήποτε κενό χαρακτήρα που υπάρχει στο τέλος κάθε γραμμής sed 's/^$/this used to be a blank line/' filename Εμφανίζει το μήνυμα στη θέση των κενών γραμμών ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Παραδείγματα διαγραφής sed '5d' διαγραφή της 5ης γραμμής sed '/[Tt]est/d' διαγραφή όλων των γραμμών που περιέχουν τα πρότυπα Test ή test sed 's/...//' data διαγραφή των 3 πρώτων χαρακτήρων από κάθε γραμμή του αρχείου data sed 's/...$//' data διαγραφή των 3 τελευταίων χαρακτήρων από κάθε γραμμή του αρχείου data sed 1,10d data Εμφανίζει το αρχείο data χωρίς τις πρώτες 10 γραμμές ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Παραδείγματα sed ‘s/.*$//’ <test1 εμφανίζει κενές όλες τις γραμμές του αρχείου sed ‘/^ *$/d’ test1 διαγραφή των κενών γραμμών ή αυτών που περιέχουν μόνον κενά ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sed ‘s/ */ /g’ test1 (2η λύση) sed ‘s/[^a-zA-Z0-9.,()] */ /g’ <test1 sed ‘s/ */ /g’ test1 (2η λύση) ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sed ‘s/[ ][^ ]*$//g’ test1 sed ‘s/[ ].*//’ test1 Na γραφεί η κατάλληλη εντολή sed που θα αφαιρεί όλους τους αριθμούς από την αρχή κάθε γραμμής sed ‘s/^[0-9][0-9]*//g’ test1 ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sed από αρχείο Αν το sed script είναι μεγάλο, μπορεί να αποτελέσει ένα αρχείο: # This file is named "sample.sed" # comments can only appear in a block at the beginning s/color/colour/g s/flavor/flavour/g s/theater/theatre/g Η sed καλείται με την επιλογή -f : sed -f sample.sed filename ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

backreferences Αναφέρονται σε αντιστοιχίσεις που έγιναν προηγουμένως στην κανονική έκφραση Προσδιορίζονται με \n όπου n είναι ένας αριθμός Παράδειγμα : (επίθετο-κόμμα-κενό-όνομα) $cat filename Karagiannis, Nikos Athanasiou, Eleni Raftopoulos, George Papas, Andreas ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Το 1ο πρότυπο είναι το \([A-Z][A-Za-z]*\), Θέλουμε να εμφανίσουμε τα στοιχεία με την εξής σειρά: Όνομα κενό διάστημα Επίθετο sed 's/^\([A-Z][A-Za-z]*\), \([A-Z][A-Za-z]*\)/\2 \1/' filename Το 1ο πρότυπο είναι το \([A-Z][A-Za-z]*\), Το 2ο πρότυπο είναι το \([A-Z][A-Za-z]*\) ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Παράδειγμα sed –e ‘s/^\([^.]*\)\.\(.*\)$/\2, \1/’ <test1 Οτιδήποτε από την αρχή της γραμμής εκτός από τελεία, στη συνέχεια τελεία, έπειτα από το σημείο αυτό έως το τέλος της γραμμής. Τα 2 πρότυπα αποθηκεύονται σε 2 buffers με αριθμούς \1 και \2 και στη συνέχεια της sed s εμφανίζονται με τη σειρά \2, \1 : echo "John.Smith" | sed 's/^\([^.]*\)\.\(.*\)$/\2, \1/‘ Αποτέλεσμα : Smith, John ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sed ‘s/\(..\):\(..\)/min:\2 – hours:\1/’ hours $cat hours 12:45 23:09 09:27 Τι θα εμφανίσει η εντολή : sed ‘s/\(..\):\(..\)/min:\2 – hours:\1/’ hours min:45 – hours:12 min:09 – hours:23 min:27 – hours:09 ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Η εντολή cut Αποσπά κάθετα κομμάτια από αρχεία. Έχει 2 καταστάσεις λειτουργίας Με τον προσδιοριστή –c επιλέγει στήλες από ένα αρχείο (columns) Με τον προσδιοριστή –f επιλέγει πεδία από ένα αρχείο (fields) Παραδείγματα cut –c2,4,6 file αποσπά τις στήλες 2,4,και 6 από το file cut –c2-6 file αποσπά τις στήλες 2-6 από το file cut –c2-6,8-10 αποσπά τις στήλες 2-6 και 8-10 από το file Οι αριθμοί των στηλών πρέπει να είναι σε αύξουσα σειρά ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Παραδείγματα cut –f1-3,5 αποσπά τα πεδία 1 έως 3 και 5 Όταν χρησιμοποιείται στη μορφή αυτή ΠΡΕΠΕΙ ΝΑ ΔΗΛΩΘΕΙ Ο ΔΙΑΧΩΡΙΣΤΗΣ ΠΕΔΙΟΥ με την επιλογή –d (delimeter) π.χ. cut –d: -f2-4 file διαχωριστής το : Ο εξ ορισμού διαχωριστής είναι το tab Όταν διαχωριστής είναι το κενό διάστημα δηλώνεται μέσα σε εισαγωγικά δηλ. –d” “ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Η εντολή paste Η εντολή paste ενώνει γραμμές από ένα ή περισσότερα αρχεία σε στήλες που διαχωρίζονται με tabs. paste [options] files Αν χρησιμοποιηθεί η επιλογή –d τότε ο χαρακτήρας που ακολουθεί τον προσδιοριστή d χρησιμοποιείται για να συνδέσει τις εισαγόμενες γραμμές. ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Παράδειγμα $ paste cands votes cands votes Gore Bradley Bush McCain Trump Letterman 10 100 Gore 10 Bradley 10 Bush 10 McCain 10 Trump 10 Letterman 100 ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

paste -s -c"\t\n" records Gore 10 Bradley 10 Bush 10 Letterman 100 records Gore 10 Bradley Bush Letterman 100 paste -s -c"\t\t\n" records Gore 10 Bradley 10 Bush 10 McCain 10 Letterman 100 ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Η εντολή tr (translate) Η γενική μορφή της είναι : tr [options] [string1] [string2] Παραδείγματα: $cat inputfile | tr 'A-Z' 'a-z' > outfile Μετατρέπει τα κεφαλαία γράμματα του αρχείου inputfile σε πεζά (στη συνέχεια το αποτέλεσμα ανακατευθύνεται στο αρχείο εξόδου outfile) $cat inputfile | tr ' ' ':' > outfile Μετατρέπει τα κενά διαστήματα σε : ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sort [options] [files] Ταξινομεί τις γραμμές ενός ή περισσοτέρων αρχείων και εμφανίζει το αποτέλεσμα : sort [options] [files] -b αγνοεί τα κενά στην αρχή -d λεξικογραφική σειρά, χρησιμοποιώντας μόνον γράμματα, ψηφία και κενά για τον καθορισμό της σειράς -n ταξινομεί τους αριθμούς κατά αριθμητική τιμή αντί σύμφωνα με το πρώτο ψηφίο -r ταξινομεί κατά αντίστροφη σειρά ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Numeric vs. Alphabetic sort -n sort Εξ ορισμού, χρησιμοποιείται η αλφαβητική διάταξη 38 18 27 1256875 66 875 sort -n sort 1256875 18 27 38 66 875 18 27 38 66 875 1256875 ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Alphabetic Ordering (uses ASCII) '0' < '9' <'A' < 'Z'< 'a' < 'z' < bbbb BBBB aaaa AAAA 0000 #### $$$$ #### $$$$ 0000 AAAA BBBB aaaa bbbb sort ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sort – χρήση πεδίων Η εντολή sort μπορεί να χρησιμοποιήσει ορισμένα μόνον πεδία κάθε γραμμής του προς ταξινόμηση αρχείου. Χρησιμοποιούνται : η επιλογή –t σε συνδυασμό με το διαχωριστικό των πεδίων του αρχείου π.χ. –t: (διαχωριστικό είναι το :) Το πλήθος των πεδίων που θα παραλειφθούν πριν αρχίσει η ταξινόμηση π.χ. sort –t: +3 maillist Η σύγκριση θα ξεκινήσει από το 4ο πεδίο κάθε γραμμής Το πλήθος των πεδίων όπου θα σταματήσει η ταξινόμηση π.χ. sort –t: +3 -5 maillist Η σύγκριση περιλαμβάνει τα πεδία 4 & 5 σε κάθε γραμμή ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sort – χρήση πολλαπλών πεδίων sort –t: +0 -1 +4 maillist Ταξινόμηση ως προς το 1ο πεδίο (+0 -1) Ταξινόμηση ως προς το 5ο πεδίο μέχρι το τέλος της γραμμής (+5) Όταν ορίζεται πεδίο με + χωρίς να ακολουθεί πεδίο με – τότε η σύγκριση γίνεται μέχρι το τέλος της γραμμής ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

sort – υποδιαιρέσεις πεδίων Μέσα σε κάθε πεδίο μπορεί να παραληφθεί κάποιος αριθμός χαρακτήρων με την προσθήκη μιας δεκαδικής υποδιαστολής στον αριθμό του πεδίου και αμέσως μετά δηλώνεται το πλήθος των χαρακτήρων που θα παραλειφθούν π.χ. sort +2.3 taxes Ταξινομείται το αρχείο taxes παραλείποντας τα 2 πρώτα πεδία καθώς και τους 3 πρώτους χαρακτήρες του 3ου πεδίου δηλαδή η ταξινόμηση θα αρχίσει από τον 4ο χαρακτήρα του 3ου πεδίου. ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Παράδειγμα sort –t: -r +2 -3 +5n grades Διαχωριστικό πεδίων : Οι γραμμές που είναι ίδιες μέχρι το σημείο αυτό ταξινομούνται στη συνέχεια με βάση ολόκληρη τη γραμμή, με αντίστροφη σειρά. ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Η εντολή uniq Η εντολή uniq διαγράφει τις όμοιες γειτονικές γραμμές σε ένα αρχείο. Συνήθως χρησιμοποιείται σε ταξινομημένα αρχεία uniq (όπου οι ίδιες γραμμές είναι γειτονικές) Μπορεί επίσης να μειώσει τις πολλαπλές κενές γραμμές σε μια κενή γραμμή. ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Παραδείγματα uniq uniq Gore Bradley Bush McCain Trump Letterman Gore Bradley Bush McCain Trump Letterman uniq 10 100 uniq 10 100 ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Επιλογές της uniq -u εμφανίζει μόνον εκείνες τις γραμμές που δεν επαναλαμβάνονται δηλ. όποια γραμμή εμφανίζεται δύο ή περισσότερες φορές δεν εμφανίζεται καθόλου -c στην αρχή κάθε γραμμής εμφανίζεται ένας αριθμός που δηλώνει πόσες φορές η γραμμή αυτή εμφανίζεται στο αρχικό αρχείο ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Η εντολή file Χρησιμοποιείται για να εμφανίσει πληροφορίες για το όνομα ή τα ονόματα αρχείων που αποτελούν ορίσματά της. Οι πληροφορίες που εμφανίζει είναι σημαντικά περισσότερες από την απλή διάκριση που υπάρχει για τα τρία βασικά είδη αρχείων στο Unix (κανονικά αρχεία, κατάλογοι και συσκευές). Διαθέτει έναν εσωτερικό μηχανισμό με τον οποίο αναγνωρίζει τον τύπο ενός αρχείου από τα περιεχόμενά του. Παράδειγμα : $ ls –l | file * | grep “text” εμφανίζει όλα τα ονόματα των αρχείων του τρέχοντος καταλόγου που είναι αρχεία κειμένου μαζί με επιπρόσθετες πληροφορίες π.χ. Xcms.txt: ASCII C program text xman.help: ASCII English text ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04

Η εντολή find Αποτελεί ένα ισχυρό εργαλείο του Unix. Εξετάζει μια δενδρική δομή καταλόγων (δηλαδή όλο το δένδρο που υπάρχει κάτω από τον κατάλογο στον οποίο επενεργεί) και αναζητά αρχεία είτε με το όνομά τους είτε μέσω ταύτισης στα χαρακτηριστικά που ορίζει π.χ. $find –name ‘[a-k]’ $find /home/studin –type d ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ – ΕΡΓΑΣΤΗΡΙΟ - 04