Κεφάλαιο 10 Διαχείριση Αρχείων και Καταλόγων

Σχετικά έγγραφα
3ο Εργαστήριο Βασικές εντολές διαχείρισης αρχείων σε LINUX

Προγραμματισμός Διαχείρισης Συστημάτων Ι

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ I

Σύντομη εισαγωγή στο λειτουργικό σύστημα Linux

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

Προγραμματισμός Διαχείρισης Συστημάτων ΙΙ

Εισαγωγή στην Επιστήμη της Πληροφορικής Εργαστήριο. UNIX Μέρος 1

Λειτουργικά Συστήματα

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Σχολή Θετικών Επιστημών Τμ. Πληροφορικής. Διδάσκων: Ι. Η. Λαγαρής. Εισαγωγή

Users (Χρήστες) Κατανοµή προνοµίων (πρόσβαση σε αρχεία, έλεγχος διεργασιών κλπ) σύµφωνα µε συµβάσεις.

[11] Υπολογιστικά συστήματα: Στρώματα. Περιεχόμενα. Εισαγωγή. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό

% ls -l /usr/bin/wc -rwxr-xr-x 1 root bin 7368 Jul /usr/bin/wc

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Εισαγωγή στο Unix

Μερικές άλλες χρήσιμες εντολές

Λειτουργικά Συστήματα Ι - Εργαστήριο

Κεφάλαιο 16: Ο κειμενογράφος Vi

ΕΡΓΑΣΤΗΡΙΟ 2: Unix Tutorial

Το Λειτουργικό Σύστημα MS-DOS

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο

Αρχιτεκτονικές Δικτύων & Πρωτόκολλα Ι

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT

Πως δημιουργούμε ένα νέο αρχείο κειμένου; Με τρεις τρόπους:

Linux με τη χρήση κονσόλας

Χρήση του διακόπτη /D για αλλαγή της τρέχουσας μονάδας δίσκου πέραν της αλλαγής τρέχοντος καταλόγου για μια μονάδα δίσκου.

ΕΡΓΑΣΤΗΡΙΟ #1. Το Λειτουργικό Σύστηµα Unix

Εργαστήριο ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ UNIX

Βασικές εντολές του Unix-Linux

2.1. Οι λογαριασµοί χρηστών Σύνδεση (login) και αποσύνδεση (logout)

Λειτουργικό σύστημα Unix

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (TP-105)

Mε την ονομασία Unix ή μάλλον Unix-like αναφερόμαστε

Εισαγωγή στον Προγραμματισμό Μάθημα 1: Βασική Πλοήγηση σε Linux CLI. Οκτώβριος 2016 Χ. Αλεξανδράκη

Unix: Εντολές, οργάνωση και χειρισµός αρχείων, διεργασίες

Δίκτυα Η/Υ στην Επιχείρηση

Κεφάλαιο 8 Το Κέλυφος

Η εντολή ln. σύνδεση με την πραγματική καταχωρημένη πληροφορία. περισσότερα ονόματα (συνδέσεις). Τα επιπλέον ονόματα δημιουργούνται με

FTP - (File Transfer Protocol ) Πρωτόκολλο Μεταφοράς Αρχείων

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στο Λ.Σ. UNIX

Το Σύστημα Αρχείων του UNIX

Εισαγωγή στον Προγραμματισμό Εργαστήριο 3: Βοηθητικά προγράμματα του Linux CLI. Οκτώβριος 2014 Χ. Αλεξανδράκη Γ. Δημητρακάκης

Εισαγωγή στον Προγραμματισμό Εργαστήριο 3: Βοηθητικά προγράμματα του Linux CLI. Οκτώβριος 2014 Χ. Αλεξανδράκη Γ. Δημητρακάκης

Άγγελος Αγγελόπουλος. Εισαγωγή στο LINUX. Οδηγός Χρήσης

Εντολές του Λειτουργικού Συστήματος UNIX

Εδώ υπάρχει ένα παράδειγμα από ένα φανταστικό πρόγραμμα και το πακέτο του:

ΤΕΙΘ ΣΤΕΦ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ (UNIX) ΕΡΓΑΣΤΗΡΙΟ

ΤΕΙΘ ΣΤΕΦ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ (UNIX) ΕΡΓΑΣΤΗΡΙΟ. 3o ΕΡΓΑΣΤΗΡΙΟ

Ενότητα 1 Διάλεξη 1β

Λειτουργικά Συστήματα

Εισαγωγή στο λειτουργικό σύστηµα Unix

Προγραμματισμός Διαχείρισης Συστημάτων ΙΙ

Open eclass Πλατφόρμα Ασύγχρονης Τηλεκπαίδευσης

Παράρτηµα Α : Εισαγωγή στο Linux.

Computing and Information Systems Service. ιαχείριση Αρχείων

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

Linux με τη χρήση κονσόλας

Η ΕΞΕΡΕΥΝΗΣΗ ΤΩΝ WINDOWS (WINDOWS EXPLORER)

Πλατφόρμα Ασύγχρονης Τηλεκπαίδευσης eclass 1.7. Οδηγίες Αναβάθμισης (Upgrade) Αθήνα, 16 Μαρτίου Εισαγωγή

Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης eclass 2.0. Οδηγίες Αναβάθµισης (Upgrade) Αθήνα, 1 Ιουνίου Εισαγωγή

Προγραμματισμός Ι. Εργαστήριο 1 ο Περιβάλλον Εργασίας. Νικόλαος Δ. Τσελίκας Κυριακή Θ. Σεκλού

Λειτουργικά Συστήµατα

Ακροατήρια: ΕΠΛ003.1

ΕΙΣΑΓΩΓΗ ΣΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ Microsoft WINDOWS (95-98-NT-2000-XP)

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II. Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact:

Κεφάλαιο 4: Ρύθμιση Συστήματος

Μεταφραστής (Compiler)

Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΡΓΑΣΤΗΡΙΟ #1 Το Λειτουργικό Σύστημα Unix

ΟΛΑ ΤΑ SCRIPT files πρέπει να είναι ΕΚΤΕΛΕΣΙΜΑ: $*, : ΟΛΑ - Η λίστα (ο πίνακας) με τα ορίσματα $# πλήθος παραμέτρων. one two third parameter

1. Τα τμήματα της επιφάνειας εργασίας των Windows

5.1.1 Περιγραφή των συστατικών τμημάτων ενός γραφήματος

Linux με τη χρήση κονσόλας

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

Σημειώνουμε ότι τα αρχεία περιλαμβάνουν κανονικά αρχεία, καταλόγους και συνδέσμους (links). Οι αντίστοιχες εντολές είναι οι εξής:

ΕΡΓΑΣΤΗΡΙΟ 1: 1 Εισαγωγή, Χρήσιμες Εφαρμογές

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στο Λ.Σ. UNIX

Shell Scripts: loops / if / test

Εργαστήριο ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ & ΚΑΤΑΛΟΓΩΝ ΣΤΟ UNIX. Εισαγωγή

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ιαφάνειες παρουσίασης #12

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

Είσοδος/Έξοδος (I/O) Παράδειγμα Δένδρου Συστήματος Αρχείων. Ανακατεύθυνση Εισόδου/Εξόδου και Διασωλήνωση στο Λειτουργικό Σύστημα UNIX

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Λειτουργικά Συστήματα

Τα Windows Πολύ Απλά και Πολύ Σύντομα

Μια εισαγωγή στο Linux με την διανομή Fedora. Βάιος Κολοφωτιάς MSc Informational Systems

ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Τµήµα Μηχανικών Πληροφορικής ΤΕ Λειτουργικά Συστήµατα (Εργαστήριο) Διδάσκων: I. Τσακνάκης. 7ο Εργαστήριο

Τοποθετήστε τη δισκέτα στο drive B και σε περιβάλλον MS-DOS πληκτρολογήστε: B:

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ I

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Σύντομη εισαγωγή στο Unix

Λειτουργικά Συστήματα (ΗΥ222)

Σύντομη περιγραφή 5. Για να ξεκινήσετε 6. Οι οθόνες του προγράμματος 8. Εγκατάσταση προγράμματος 6 Δημιουργία κωδικών χρήστη 7

Εισαγωγή στα Λειτουργικά Συστήματα

Κεφάλαιο 4: Λογισμικό Συστήματος

Εντολές Διαχείρισης Αρχείων στο Λειτουργικό Σύστημα UNIX. Δημιουργία Αρχείων. Η Εντολή cat. Παράδειγμα Δένδρου Συστήματος Αρχείων

Μερικές άλλες χρήσιμες εντολές

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

ΑΝΑΠΤΥΞΗ ΔΙΑΝΟΜΗΣ LINUX ΠΡΟΣΑΡΜΟΣΜΕΝΗΣ ΣΤΙΣ ΑΝΑΓΚΕΣ ΤΟΥ ΤΜΗΜΑΤΟΣ Η.Υ.Σ.

ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική. Πρόοδος 28 Μαρτίου 2009 Οµάδα 1 η

Οδηγίες για την εγκατάσταση του πακέτου Cygwin

Transcript:

Κεφάλαιο 10 Διαχείριση Αρχείων και Καταλόγων Στόχος του Linux να είναι όσο πιο κοντά στο Unix γίνεται. Παραδοσιακά, τα Unix λειτουργικά συστήματα ήταν προσανατολισμένα στη γραμμή εντολών. Έχουμε γραφικό περιβάλλον στο Slackware, αλλά η γραμμή εντολών παραμένει το βασικό επίπεδο ελέγχου του συστήματος. Κατά συνέπεια είναι σημαντικό να κατανοήσετε κάποιες από τις βασικές εντολές διαχείρισης αρχείων. Οι ακόλουθες ενότητες εξηγούν τις συνηθισμένες εντολές διαχείρισης αρχείων και παρέχουν παραδείγματα χρήσης τους. Υπάρχουν πολλές ακόμα εντολές, αλλά αυτές θα σας βοηθήσουν να ξεκινήσετε. Επίσης, οι εντολές περιγράφονται σύνοπτικά εδώ. Θα βρείτε περισσότερες λεπτομέρειες στη συνοδευτική σελίδα man κάθε εντολής. 10.1 Πλοήγηση: ls, cd και pwd 10.1.1 ls Η εντολή αυτή εμφανίζει τα αρχεία ενός καταλόγου. Οι χρήστες Windows και DOS θα προσέξουν την ομοιότητά της με την εντολή dir. Από μόνη της, η ls(1) θα απεικονίσει τα αρχεία του τρέχοντος καταλόγου. Για να δείτε τι υπάρχει στον μητρικό κατάλογο, θα μπορούσατε να δώσετε τις ακόλουθες εντολές: % cd / % ls bin cdr dev home lost+found proc sbin tmp var boot cdrom etc lib mnt root suncd usr vmlinuz Το πρόβλημα που πολλοί άνθρωποι έχουν με αυτή την έξοδο είναι ότι δεν μπορεί να διακρίνει κανείς εύκολα τι είναι κατάλογος και τι αρχείο. Μερικοί χρήστες προτιμούν η ls να προσθέσει ένα αναγνωριστικό τύπου σε κάθε λίστα, όπως εδώ: % ls -FC bin/ cdr/ dev/ home/ lost+found/ proc/ sbin/ tmp/ var/ boot/ cdrom/ etc/ lib/ mnt/ root/ suncd/ usr/ vmlinuz Το όνομα ενός καταλόγου ακολουθείται από μια κάθετο, το όνομα ενός εκτελέσιμου ακολουθείται από έναν αστερίσκο και ούτο καθ'εξής. Η ls μπορεί επίσης να χρησιμοποιηθεί για να επιστρέψει και άλλα στατιστικά για τα αρχεία. Για παράδειγμα, για να δείτε τις ημερομηνίες δημιουργίας, τους ιδιοκτήτες και τις άδειες, θα χρησιμοποιούσατε μια εκτενή λίστα: % ls -l drwxr-xr-x 2 root bin 4096 May 7 09:11 bin/ drwxr-xr-x 2 root root 4096 Feb 24 03:55 boot/ drwxr-xr-x 2 root root 4096 Feb 18 01:10 cdr/ drwxr-xr-x 14 root root 6144 Oct 23 18:37 cdrom/ drwxr-xr-x 4 root root 28672 Mar 5 18:01 dev/ drwxr-xr-x 10 root root 4096 Mar 8 03:32 etc/ drwxr-xr-x 8 root root 4096 Mar 8 03:31 home/ drwxr-xr-x 3 root root 4096 Jan 23 21:29 lib/ drwxr-xr-x 2 root root 16384 Nov 1 08:53 lost+found/ drwxr-xr-x 2 root root 4096 Oct 6 12:47 mnt/ dr-xr-xr-x 62 root root 0 Mar 4 15:32 proc/ drwxr-x--x 12 root root 4096 Feb 26 02:06 root/ drwxr-xr-x 2 root bin 4096 Feb 17 02:02 sbin/ drwxr-xr-x 5 root root 2048 Oct 25 10:51 suncd/ drwxrwxrwt 4 root root 487424 Mar 7 20:42 tmp/

drwxr-xr-x 21 root root 4096 Aug 24 03:04 usr/ drwxr-xr-x 18 root root 4096 Mar 8 03:32 var/ Ας υποθέσουμε ότι θέλετε να δείτε τα κρυφά αρχεία του τρέχοντος καταλόγου. Αυτή η εντολή θα κάνει ακριβώς αυτό: % ls -a. bin cdrom home mnt sbin usr.. boot dev lib proc suncd var.pwrchute_tmp cdr etc lost+found root tmp vmlinuz Τα αρχεία που ξεκινούν με τελεία (τα αποκαλούμενα dot files) δεν εμφανίζονται όταν τρέχετε την ls. Θα τα δείτε μόνο περνώντας την -a παράμετρο. Υπάρχουν πολλές ακόμα επιλογές και μπορείτε να τις βρείτε στην σελίδα man. Μην ξεχνάτε ότι μπορείτε να συνδυάσετε τις παραμέτρους που περνάτε στην ls. 10.1.2 cd Η εντολή cd χρησιμοποιείται για να αλλάξετε τον ενεργό κατάλογο. Απλά πληκτρολογείτε cd ακολουθούμενο από το μονοπάτι στο οποίο θέλετε να μεταβείτε. Εδώ μερικά παραδείγματα: darkstar:~$ cd /bin darkstar:/bin$ cd usr bash: cd: usr: No such file or directory darkstar:/bin$ cd /usr darkstar:/usr$ ls bin darkstar:/usr$ cd bin darkstar:/usr/bin$ Προσέξτε ότι χωρίς την αρχική κάθετο, προσπαθεί να μεταβεί σε έναν κατάλογο μέσα στον ενεργό. Επίσης εκτελώντας την cd χωρίς παραμέτρους θα μεταβείτε στον προσωπικό κατάλογο (home). Η εντολή cd δεν είναι σαν τις υπόλοιπες. Είναι ενσωματωμένη στο κέλυφος εντολή. Στις ενσωματωμένες στο κέλυφος εντολές αναφέρεται η ενότητα 8.3.1. Αυτό ίσως δεν φαίνεται αμέσως να έχει νόημα. Βασικά σημαίνει ότι δεν υπάρχει σελίδα man για αυτή την εντολή. Αντί για αυτή, πρέπει να χρησιμοποιήσετε τη βοήθεια του κέλυφους. Ως εξής: % help cd Θα εμφανίσει τις επιλογές για τη cd και πως να τις χρησιμοποιήσετε. 10.1.3 pwd Η pwd εντολή χρησιμοποιείται για να δείξει την τρέχουσα θέση σας. Για να τη χρησιμοποιήσετε απλά πληκτρολογήστε pwd. Για παράδειγμα: % cd /bin % pwd /bin % cd /usr % cd bin % pwd /usr/bin

10.2 Σελιδοποίηση: more, less και most 10.2.1 more Η more(1) είναι αυτό που αποκαλούμε εργαλείο σελιδοποίησης. Συχνά η έξοδος μιας εντολής είναι υπερβολικά μεγάλη για να χωρέσει σε μια οθόνη. Οι μεμονωμένες εντολές δεν ξέρουν πως να χωρέσουν την έξοδο σε χωριστές οθόνες. Αφήνουν τη δουλειά στο εργαλείο σελιδοποίησης. Η εντολή more σπάει την έξοδο σε μεμονωμένες οθόνες και περιμένει να πατήσετε την space bar πριν συνεχίσει στην επόμενη οθόνη. Πατώντας το enter θα προχωρήσει η έξοδος κατά μια γραμμή. Εδώ ένα καλό παράδειγμα: % cd /usr/bin % ls -l Aυτό λογικά θα κυλά για λίγο. Για να σπάσετε την έξοδο σε σελίδες, απλά προωθήστε την έξοδο στη more: % ls -l more Αυτός είναι ο χαρακτήρας ανακατεύθυνσης εξόδου (pipe, shift backslash). Η ανακατεύθυνση συνοπτικά σημαίνει πάρε την έξοδο της ls και δώσε την ως είσοδο στη more. Μπορείτε να ανακατευθύνετε πρακτικά οτιδήποτε στη more, όχι μόνο την ls. Η ανακατεύθυνση καλύπτεται επίσης στην ενότητα 8.2.3. 10.2.2. less Η εντολή more είναι αρκετά πρακτική, αλλά συχνά θα ανακαλύψετε ότι προσπεράσατε τη σελίδα που θέλατε. Με την more δεν υπάρχει τρόπος να επιστρέψετε. Η εντολή less(1) παρέχει αυτή τη λειτουργία. Χρησιμοποιείται με τον ίδιο τρόπο όπως η more, άρα τα προηγούμενα παραδείγματα ταιριάζουν και εδώ. Συνεπώς η less είναι περισσότερα από τη more. Ο Joost Kremens το θέτει ως εξής: H less είναι περισσοτερα, αλλά περισσότερο more από τη more, άρα η more είναι λιγότερο less, άρα χρησιμοποιήστε περισσότερο less αν θέλετε λιγότερο more. 10.2.3 most Εκεί που τελειώνουν οι more και less αναλαμβάνει η most(1). Αν η less είναι περισσότερα από την more, η most είναι περισσότερα από τη less. Ενώ οι άλλοι σελιδοποιητές μπορούν να απεικονίσουν ένα αρχείο κάθε φορά η most είναι ικανή να απεικονίσει οσαδήποτε αρχεία, αρκεί το παράθυρο κάθε αρχείου να είναι τουλάχιστον 2 γραμμές. Η most έχει πολλές επιλογές, δείτε τη σελίδα man για λεπτομέρειες. 10.3 Απλή έξοδος: cat και echo 10.3.1 cat H cat(1) είναι συντομογραφία για την "συνένωση" (concatenate). Αρχικά σχεδιάστηκε για να συγχωνεύει αρχεία κειμένου σε ένα, αλλά μπορεί να χρησιμοποιηθεί για πολλούς ακόμη σκοπούς. Για να συγχωνεύσετε δύο ή περισσότερα αρχεία σε ένα, απλά δώστε τα αρχεία μετά την εντολή cat και ανακατευθύνετε τη νέα έξοδο σε ένα αρχείο. H cat δουλεύει με την βασική είσοδο και έξοδο (standard input and output), άρα θα πρέπει να χρησιμοποιήσετε τους χαρακτήρες ανακατεύθυνσης του κέλυφους. Για παράδειγμα: % cat file1 file2 file3 > bigfile Αυτή η εντολή παίρνει τα περιεχόμενα των file1, file2, file3 και τα συνενώνει. Η νέα έξοδος προωθείται στην βασική έξοδο. Κανείς μπορεί να χρησιμοποιήσει την cat για να απεικονίσει αρχεία. Πολλοί χρησιμοποιούν την cat μεσω των εντολών more και less, ώς εξής:

% cat file1 more Αυτό θα απεικονίσει το file1 και θα το ανακατευθύνει μέσω της εντολής more ώστε να δείτε μια οθόνη κάθε φορά. Μια άλλη κοινή χρήση της cat είναι η αντιγραφή αρχείων. Μπορείτε να αντιγράψετε οποιοδήποτε αρχείο με την cat, ώς εξής: % cat /bin/bash > ~/mybash Το πρόγραμμα /bin/bash αντιγράφεται στον προσωπικό κατάλογο και ονομάζεται mybash. Η cat έχει πολλές χρήσεις και αυτές που εξετάζονται εδώ είναι μόνο λίγες. Καθώς η cat χρησιμοποιεί εκτενώς τη βασική είσοδο και έξοδο, είναι ιδανική για χρήση σε σενάρια (scripts) του κελύφους ή ως μέρος άλλων σύνθετων εντολών. 10.3.2 echo Η εντολή echo(1) απεικονίζει το μήνυμα που καθορίζεται στην οθόνη. Εσείς καθορίζετε τη συμβολοσειρά που θα απεικονιστεί μετά την εντολή echo. Η προεπιλογή της echo είναι να απεικονίσει τη συμβολοσειρά και να τυπώσει έναν χαρακτήρα τέλους γραμμής μετά από αυτή. Μπορείτε να περάσετε την επιλογή -n για να αποφύγετε την εκτύπωση της νέας γραμμής. Η επιλογή -e θα οδηγήσει την echo να ψάξει για χαρακτήρες διαφυγής στη συμβολοσειρά και να τους εκτελέσει. 10.4 Δημιουργία: touch και mkdir 10.4.1 touch Η touch(1) χρησιμοποιείται για να αλλάξει τη χρονική σφραγίδα (timestamp) ενός αρχείου. Μπορείτε να αλλάξετε τις χρονικές σφραγίδες πρόσβασης και τροποποίησης με αυτή την εντολή. Αν το αρχείο που καθορίζεται δεν υπάρχει η touch θα δημιουργήσει ένα αρχείο μηδενικού μήκους με το όνομα που καθορίζεται. Για να σφραγίσετε ένα αρχείο με την τρέχουσα ώρα του συστήματος θα δίνατε αυτη την εντολή: % ls -al file1 -rw-r--r-- 1 root root 9779 Feb 7 21:41 file1 % touch file1 % ls -al file1 -rw-r--r-- 1 root root 9779 Feb 8 09:17 file1 Υπάρχουν αρκετές επιλογές για την touch και συμπεριλαμβάνονται επιλογές για τη χρονική σφραγίδα που θα τροποποιηθεί, ο χρόνος που θα χρησιμοποιηθεί και άλλα. H σελίδα man τις περιγράφει αναλυτικά. 10.4.2 mkdir Η mkdir(1) θα δημιουργήσει έναν καινούριο κατάλογο. Απλά καθορίζετε τον κατάλογο που θα δημιουργηθεί όταν τρέχετε τη mkdir. Το παράδειγμα δημιουργεί τον κατάλογο hejaz στον ενεργό κατάλογο: % mkdir hejaz Μπορείτε επίσης να προσδιορίσετε μονοπάτι, ως εξής: % mkdir /usr/local/hejaz Η επιλογή -p λέει στη mkdir να δημιουργήσει οποιονδήποτε μητρικό κατάλογο. Το παράδειγμα που προηγήθηκε θα αποτύχει αν δεν υπάρχει το /usr/local. Η επιλογή -p θα δημιουργήσει τα /usr/local και /usr/local/hejaz: % mkdir -p /usr/local/hejaz

10.5 Αντιγραφή και Μετακίνηση 10.5.1 cp Η cp(1) αντιγράφει αρχεία. Οι χρήστες DOS θα παρατηρήσουν ότι είναι παρόμοια με την εντολή copy. Υπάρχουν πολλές επιλογές για τη cp, άρα θα πρέπει να ρίξετε μια ματιά στη σελίδα man πριν τη χρησιμοποιήσετε. Μια κοινή χρήση της use είναι να αντιγράψει ένα αρχείο από μια τοποθεσία σε μια άλλη. Για παράδειγμα: % cp hejaz /tmp Αυτό αντιγράφει το αρχείο hejaz από τον ενεργό κατάλογο στον κατάλογο /tmp. Πολλοί χρήστες προτιμούν να διατηρήσουν τις χρονικές σφραγίδες, όπως σε αυτό το παράδειγμα: % cp -a hejaz /tmp Αυτό σας διαβεβαιώνει ότι οι χρονικές σφραγίδες δεν μεταβάλλονται με την αντιγραφή. Για να αντιγράψετε αναδρομικά τα περιεχόμενα ενός καταλόγου σε έναν άλλο κατάλογο, θα δίνατε αυτή την εντολή: % cp -R mydir /tmp Αυτό θα αντιγράψει τον κατάλογο mydir στον κατάλογο /tmp. Επίσης αν θέλετε να αντιγράψετε έναν κατάλογο ή ένα αρχείο, να διατηρήσετε τις παλιές του άδειες και χρονικές σφραγίδες και να το διατηρήσετε ανέπαφο χρησιμοποιήστε τη cp -p. % ls -l file -rw-r--r-- 1 root vlad 4 Jan 1 15:27 file % cp -p file /tmp % ls -l /tmp/file -rw-r--r-- 1 root vlad 4 Jan 1 15:27 file Η cp έχει πολλές ακόμα επιλογές που περιγράφονται αναλυτικά στη σελίδα man. 10.5.2 mv Η mv(1) μετακινεί αρχεία από μια θέση σε μια άλλη. Ακούγεται απλό και είναι. % mv oldfile /tmp/newfile Η mv έχει κάποιες χρήσιμες παραμέτρους από τη γραμμή εντολών που περιγράφονται αναλυτικά στη σελίδα man. Στην πράξη η mv σχεδόν ποτέ δεν χρησιμοποιείται με παραμέτρους γραμμής εντολών. 10.6 Διαγραφή: rm και rmdir 10.6.1 rm Η rm διαγράφει αρχεία και δέντρα καταλόγων. Οι χρήστες DOS θα προσέξουν πως είναι παρόμοια στις εντολές del και deltree. Η rm μπορεί να είναι πολύ επικίνδυνη αν δεν είστε προσεκτικοί. Αν και είναι κάποιες φορές δυνατή η επανάκτηση ενός αρχείου που διαγράφηκε πρόσφατα, μπορεί να είναι πολύπλοκο (και πιθανόν να έχει κόστος) και ξεπερνάει τους στόχους αυτού του βιβλίου. Για να διαγράψετε ένα μεμονωμένο αρχείο, καθορίστε το όνομά του όταν τρέχετε την rm: % rm file1 Αν το αρχείο δεν έχει άδεια εγγραφής ίσως σας επιστραφεί ένα μήνυμα άρνησης πρόσβασης. Για να εξαναγκάσετε τη διαγραφή του αρχείου σε κάθε περίπτωση, περάστε την επιλογή -f, ως εξής: % rm -f file1

Για να διαγράψετε έναν ολόκληρο κατάλογο, χρησιμοποιήτε τις επιλογές -r και -f μαζί. Αυτό είναι ένα καλό παράδειγμα διαγραφής όλων των περιεχομένων του σκληρού σας δίσκου. Σίγουρα δεν θέλετε να το κάνετε αυτό. Αλλά παρ'όλα αυτά ακολουθεί η εντολή: # rm -rf / Να είστε πολύ προσεκτικοί με την rm: μπορεί να αυτοτραυματιστείτε (you can shoot yourself in the foot). Υπάρχουν αρκετές επιλογές από τη γραμμή εντολών που περιγράφονται αναλυτικά στη σελίδα man. 10.6.2 rmdir Η rmdir(1) διαγράφει καταλόγους από το σύστημα αρχείων. Ο κατάλογος πρέπει να είναι άδειος πριν τη διαγραφή. Η σύνταξη είναι απλή: % rmdir <directory> Αυτό το παράδειγμα θα διαγράψει τον κατάλογο hejaz στον ενεργό κατάλογο: % rmdir hejaz Αν αυτός ο κατάλογος δεν υπάρχει η rmdir θα σας το πει. Μπορείτε επίσης να προσδιορίσετε πλήρες μονοπάτι του καταλόγου προς διαγραφή, όπως φαίνεται στο παράδειγμα: % rmdir /tmp/hejaz Το παράδειγμα θα προσπαθίσει να διαγράψει τον κατάλογο hejaz μέσα στον κατάλογο /tmp. Μπορείτε επίσης να διαγράψετε έναν κατάλογο και όλους τους μητρικούς του περνώντας την επιλογή -p. % rmdir -p /tmp/hejaz Αυτό πρώτα θα διαγράψει τον κατάλογο hejaz στον /tmp. Αν αυτό πετύχει, θα προσπαθήσει να διαγράψει το /tmp. Η rmdir θα συνεχίσει μέχρι να συμβεί ένα λάθος ή να διαγραφεί ολόκληρο το δέντρο που καθορίζεται. 10.7 Συνδέοντας αρχεία με το ln Η ln(1) χρησιμοποιείται για τη δημιουργία συνδέσμων μεταξύ αρχείων. Οι σύνδεσμοι μπορεί να είναι είτε σκληροί (hard links) ή συμβολικοί (soft/symbolic links). Οι διαφορές μεταξύ των δυο ειδών έχουν συζητηθεί στην ενότητα 9.3. Αν θέλατε να δημιουργήσετε συμβολικό σύνδεσμο στον κατάλογο /var/media/mp3 και να τον τοποθετήσετε στον προσωπικό σας κατάλογο, θα κάνατε αυτό: % ln -s /var/media/mp3 ~/mp3 Η επιλογή -s λέει στην ln να δημιουργήσει συμβολικό σύνδεσμο. Η επόμενη επιλογή είναι ο προορισμός του συνδέσμου και η τελευταία επιλογή είναι το όνομά του. Σε αυτή την περίπτωση, απλά θα δημιουργήσει ένα αρχείο με όνομα mp3 στον προσωπικό σας κατάλογο που δείχνει στο /var/media/mp3. Μπορείτε να ονομάσετε τον ίδιο τον σύνδεσμο όπως θέλετε απλά αλλάζοντας την τελευταία επιλογή. Η δημιουργία σκληρού συνδέσμου είναι εξίσου απλή. Αυτό που πρέπει να κάνετε είναι να παρακάμψετε την επιλογή -s. Ωστόσο οι σκληροί σύνδεσμοι κανονικά δεν πρέπει να αναφέρονται σε καταλόγους ή να γεφυρώνουν συστήματα καταλόγων. Για να δημιουργήσετε έναν σκληρό σύνδεσμο /usr/bin/email προς το /usr/bin/mutt, απλά πληκτρολογήστε τα ακόλουθα: % ln -s /var/media/mp3 ~/mp3