Προγραµµατισµός Συστήµατος

Σχετικά έγγραφα
Εργαστήριο ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ UNIX

Κ24: Προγραµµατισµός Συστήµατος

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

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

Κ24: Προγραμματισμός Συστήματος

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ I. 1. Εισαγωγή 3 ΠΡΟΛΟΓΟΣ

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

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

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

*? [xyz] [^xy] [!0-9] [:alpha:] [:digit:]

Εισαγωγή στο UNIX. Κωνσταντίνος Καραφασούλης ιδάσκων (Π 407) Τµήµα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστηµάτων

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

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

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

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

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

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

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

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

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

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

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος

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

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

Εισαγωγή...1 Το κοινό αυτού του βιβλίου...2 Οι συμβάσεις που χρησιμοποιούνται στο βιβλίο...3

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

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

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

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

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

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

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

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

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

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

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

Λειτουργικά Συστήματα - Εργαστήριο 6. 6ο Εργαστήριο. Συμπίεση αρχείων Χρήση ειδικών χαρακτήρων στην γραμμή εντολών. Χρήστες και Ομάδες Χρηστών

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας

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

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

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

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

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

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

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

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

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

!"#$µ"%" UNIX &'" ()*+)',-.

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

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

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

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

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

Επαναληπτικές Ασκήσεις

2.Shell, users, groups και privilegies

Θέτοντας και επιστρέφοντας την τιµή της προτεραιότητας διεργασίας

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

Λειτουργικά Συστήματα (ΗΥ-345) Χειμερινό Εξάμηνο

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

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/09, 23:59

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

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

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

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

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

ΒασικέςέννοιεςτουUNIX: Πλοήγηση στο Σύστημα Αρχείων, ΟφλοιόςτουUNIX, Βοηθητικά Προγράμματα, ΗδομήτουΠυρήνα.

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

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

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

Εισαγωγή στο Linux και στο περιβάλλον εργασίας.

Λειτουργικά Συστήματα. Άσκηση Πράξη. Shell Programming

επιµέλεια Θοδωρής Πιερράτος

Εργαστήριο Λειτουργικών Συστημάτων. Minix Overview

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

Σύντομο Εγχειρίδιο Linux. 1 ον Μέρος.

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

Αβδέλαρου Κωνσταντίνα

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

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Εγχειρίδιο για το Λειτουργικό Σύστηµα Linux. Ιωάννης Ε. Λιβιέρης

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

Προγραµµατισµός Ι ΕΡΓΑΣΤΗΡΙΟ 2 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

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

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

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

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

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

Shell Scripts: loops / if / test

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

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

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

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

Διαδικαστικά. Εισαγωγή στο Λειτουργικό Σύστημα UNIX. Διαδικαστικά. Τι είναι το Λειτουργικό Σύστημα

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

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

Εργαστήριο Λειτουργικών Συστημάτων. Shell Programming

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

Χειµερινό Εξάµηνο 2013

Transcript:

Προγραµµατισµός Συστήµατος ιδάσκων: Αντώνιος εληγιαννάκης ιδασκαλία: Τετάρτη 19:00-21:00 (Αίθουσα Α ) Πέµπτη 16:00-18:00 18:00 (Αίθουσα ΣΤ ) Γραφείο: Α38 Ώρες Γραφείου: Τετάρτη 16:30-18:30 18:30 Email: adeli@di.uoa.gr

ιαδικαστικά Σελίδα Μαθήµατος: http://www.di.uoa.gr/~spro Mailing List: http://www.di.uoa.gr/~mailman/listinfo/info-spro Γραφτείτε για ανακοινώσεις, ερωτήσεις κτλ. (ΣΗΜΑΝΤΙΚΟ) Σηµειώσεις http://www.di.uoa.gr/~spro/books/long.pdf (δε χωρίζει εικόνες σε σελίδες, αλλά όχι καλά ονόµατα σε bookmarks) ή http://www.di.uoa.gr/~spro/books/short.pdf (χωρίζει µερικές εικόνες σε σελίδες, αλλά καλά ονόµατα σε bookmarks) http://www.di.uoa.gr/~spro/books/index.chm (µορφή ευρετηρίου - κάντε Save, και µετά δεξί κλικ, Properties, unblock από Windows µηχανήµατα) http://www.di.uoa.gr/~spro/books/scripts.pdf (προγραµµατισµός κελύφους) ΟΠΟΙΟΣ ΕΝ ΞΕΡΕΙ ΤΟΝ ΚΩ ΙΚΟ ΝΑ ΜΟΥ ΣΤΕΙΛΕΙ EMAIL ΑΠΌ ΛΟΓΑΡΙΑΣΜΟ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ 17/10/2007 Προγραµµατισµός Συστήµατος 2

Βαθµολογία Μαθήµατος Βαθµολογία Ιανουαρίου 50% Ασκήσεις (4-5%, 15%, 17%, 13%) 50% Γραπτή Εξέταση Βαθµολογία Σεπτεµβρίου 50% Γραπτή Εξέταση 50% Καλύτερος βαθµός από Ασκήσεις/Εξέταση Πχ: 0% σε Ασκήσεις, 60% στην εξέταση => Βαθµός 6 Πχ: Ασκήσεις: 80%, εξέταση: 60% => Βαθµός 7 Αντιγραφή σε άσκηση ή εξέταση θα συνεπάγεται αυτόµατο µηδενισµό στο συνολικό βαθµό (και στις 2 εξετάσεις) 17/10/2007 Προγραµµατισµός Συστήµατος 3

Ασκήσεις Πλατφόρµα Εργασίας Linux µηχανήµατα linux02.di.uoa.gr, linux03.di.uoa.gr,..., linux12.di.uoa.gr Εξέταση ασκήσεων ΜΟΝΟ σε αυτές τις πλατφόρµες (άδεια εξέτασης σε UNIX πλατφόρµα πρέπει να ζητηθεί ρητά) Κάθε άσκηση θα εξετάζεται προφορικά Αυτονόητο ότι καθένας γνωρίζει ακριβώς πώς υλοποίησε τις ασκήσεις ΜΟΝΟ η δεύτερη άσκηση θα είναι σε οµάδες των 2 Ενηµερώστε µε µέχρι 01/11 για το συνεργάτη σας 17/10/2007 Προγραµµατισµός Συστήµατος 4

Καθυστερηµένη Παράδοση Η προθεσµία είναι πάντα στις 18:00:00 της ηµέρας παράδοσης Καθυστερηµένη παράδοση (εκτός 1ης άσκησης): Έως 24 ωρών: Βαθµολόγιση µε άριστα το 85% Έως 48 ωρών: Βαθµολόγιση µε άριστα το 70% Μετά 48 ωρών: ε γίνεται δεκτή παράδοση άσκηση Για την 1η άσκηση δεν θα γίνουν δεκτές καθυστερηµένες παραδόσεις 17/10/2007 Προγραµµατισµός Συστήµατος 5

Περιεχόµενα Μαθήµατος Λειτουργικό σύστηµα UNIX Προγραµµατισµός σε κελύφη Προγραµµατισµός λειτουργιών συστήµατος σε C Χειρισµό λαθών Αποστολή/παραλαβή σηµάτων Είσοδο/έξοδο χαµηλού επιπέδου ηµιουργία/τερµατισµό διεργασιών Επικοινωνία µεταξύ διεργασιών µέσω σωλήνων, υποδοχών, ουρών µηνυµάτων, κοινής µνήµης, και σηµατοφόρων ηµιουργία, τερµατισµό και συγχρονισµό νηµάτων 17/10/2007 Προγραµµατισµός Συστήµατος 6

Λειτουργικό σύστηµα Ενδιάµεσο πρόγραµµα µεταξύ χρήστη-υλικού συστήµατος Στόχος ιευκόλυνση χρήσης υπολογιστή Αποδοτική χρήση υπολογιστή ιαχείρηση Πόρων Επεξεργαστές Κύρια και δευτερεύουσα µνήµη Συσκευές εισόδου/εξόδου 17/10/2007 Προγραµµατισµός Συστήµατος 7

Unix 1969 Bell Laboratories (AT&T) σε µορφή assembly 1973 υλοποίηση σε γλώσσα C Πολλές αλλαγές βελτιώσεις από τότε Κυρίως από Univ. of California, Berkeley Χρήση σε προσωπικούς υπολογιστές ως Linux 17/10/2007 Προγραµµατισµός Συστήµατος 8

Χαρακτηριστικά Unix Πολλαπλοί χρήστες Πολλαπλές διεργασίες, διαµέριση χρόνου Παροχή ασφάλειας Υποστήριξη δικτύων οµή: Πυρήνας (kernel) Βοηθητικά προγράµµατα Κέλυφος (C, Bourne, Bash, Korn ) 17/10/2007 Προγραµµατισµός Συστήµατος 9

Χαρακτηριστικά Unix (2) Παροχή C συναρτήσεις για κλήσεις συστήµατος ιαλογική επικοινωνία χρήστη µε το κέλυφος Επιτρέπει προγραµµατισµό του κελύφους ιάκριση πεζών-κεφαλαίων 17/10/2007 Προγραµµατισµός Συστήµατος 10

Ιεραρχική Οργάνωση / bin etc home dev var usr tmp jim john mary tmp spool local bin Κατάλογος-Ρίζα (/) Τρέχων κατάλογος (.) Γονικός κατάλογος (..) Μονοπάτια απόλυτα και σχετικά Αρχεία Σύνδεσµοι Συσκευές 17/10/2007 Προγραµµατισµός Συστήµατος 11

Λογαριασµός Χρήστη Όνοµα και συνθηµατικό χρήστη Κέλυφος αρχικής σύνδεσης Οµάδες χρήστη Κατάλογος αφετηρίας 17/10/2007 Προγραµµατισµός Συστήµατος 12

Βασικές Εντολές man ls pwd cd mkdir rmdir cp mv rm cat lpr vi Εµφάνιση οδηγιών χρήσης εντολών Εµφάνιση περιεχοµένων καταλόγου Μονοπάτι τρέχοντος καταλόγου Αλλαγή τρέχοντος καταλόγου ηµιουργία καταλόγου ιαγραφή καταλόγου Αντιγραφή αρχείου/καταλόγου Μετακίνηση αρχείου ιαγραφή αρχείου Εµφάνιση περιεχοµένων αρχείου Εκτύπωση αρχείου Κειµενογράφος οθόνης 17/10/2007 Προγραµµατισµός Συστήµατος 13

Εντολή man (-k) Όλα όσα περιέχουν τη λέξη manual (-k) 17/10/2007 Προγραµµατισµός Συστήµατος 14

Εντολή ls (-a, -l, -r) Τύπωσε και περιεχόµενα από. (-a) Ότι το προηγούµενο, λεπτοµερώς (-l) Αντίστροφη εκτύπωση (-r) Αρχείο που εκτελείται όταν ξεκινάει το κέλυφος: bash:.bashrc csh:.cshrc tcsh:.tcshrc 17/10/2007 Προγραµµατισµός Συστήµατος 15

ικαιώµατα χρηστών Κάθε αρχείο/κατάλογος ανήκει στον δηµιουργό του Κάθε χρήστης ανήκει σε 1 ή περισσότερες οµάδες. Πχ: users, spro 10 bits - rwx r-x r-x χρήστης οµάδα υπόλοιποι 1o bit συνήθως d (κατάλογος) ή - (κανονικό αρχείο) 3 οµάδες τριών bit (ανάγνωση, εγγραφή, εκτέλεση) 17/10/2007 Προγραµµατισµός Συστήµατος 16

ικαιώµατα χρηστών r w x Αρχείο Ανάγνωση, αντιγραφή Αλλαγή αρχείου. ΟΧΙ διαγραφή Εκτέλεση αρχείου Κατάλογος Περιεχόµενα καταλόγου ιαγραφή, δηµιουργία αρχείων Πρόσβαση σε όνοµααρχείου. Αν δεν έχω r δεν βλέπω όµως ονόµατα άλλων αρχείων 17/10/2007 Προγραµµατισµός Συστήµατος 17

Εντολή ls (-d, -R, -t) Μόνο για τον κατάλογο (-d) Αναδροµική εκτύπωση υποκαταλόγων (-R) Ταξινόµηση µε βάση τελευταία µεταβολή (-t) 17/10/2007 Προγραµµατισµός Συστήµατος 18

Εντολές pwd, cd, mkdir, rmdir Έξτρα σύµβολα στο τέλος ονόµατος (-F) Μονοπάτι τρέχοντος καταλόγου rmdir -r (για όχι άδειους καταλάγους) 17/10/2007 Προγραµµατισµός Συστήµατος 19

Εντολές cp (-i, -r), mv (-i), rm (-i, -r, -f) Αν υπάρχει, επιβεβαίωση (-i) Αν υπάρχει, επιβεβαίωση (-i) Αναδροµική αντιγραφή (-r) Αναδροµική διαγραφή (-r) rm -f (διαγραφή χωρίς ερώτηση λιγότερο ισχυρό από το -i) 17/10/2007 Προγραµµατισµός Συστήµατος 20

Εντολές cat (-n), lpr (-P), emacs Εµφάνισε και αριθµούς γραµµών (-n) 17/10/2007 Προγραµµατισµός Συστήµατος 21

Κειµενογράφος vi vi filename Οδηγίες χρήσης στη σελίδα του µαθήµατος 17/10/2007 Προγραµµατισµός Συστήµατος 22

Επεξεργασία Αρχείων chmod more grep wc sort touch ln cut cmp diff head tail Αλλαγή δικαιωµάτων προστασίας αρχείων και καταλόγων Εµφάνιση οδηγιών χρήσης εντολών Εµφάνιση περιεχοµένων καταλόγου Μονοπάτι τρέχοντος καταλόγου Αλλαγή τρέχοντος καταλόγου ηµιουργία καταλόγου ηµιουργία συνδέσµων ιαγραφή καταλόγου Σύγκριση 2 αρχείων Εµφάνιση διαφορών 2 αρχείων κειµένου Μετακίνηση αρχείου ιαγραφή αρχείου 17/10/2007 Προγραµµατισµός Συστήµατος 23

Εντολή chmod (-R) Αφαίρεσε ανάγνωση από υπόλοιπους Πρόσθεσε εγγραφή, εκτέλεση σε οµάδα Αναδροµικά στον κατάλογο (-R) 17/10/2007 Προγραµµατισµός Συστήµατος 24

Θέµα εξέτασης Σαν owner, µπορώ. Αλλιώς όχι. εν έχει δικαίωµα ανάγνωσης 17/10/2007 Προγραµµατισµός Συστήµατος 25

Εντολή more 17/10/2007 Προγραµµατισµός Συστήµατος 26

Εντολές grep (-n, -i, -v), wc (-l, -w, -c) Γραµµές που περιέχουν 6000 Τύπωσε # γραµµής Αγνόησε κεφαλαία-µικρά Όλες τις γραµµές ΕΚΤΟΣ από όσες ταιριάζουν # Γραµµές, λέξεις, χαρακτήρες Μόνο # γραµµών Μόνο # λέξεις Μόνο # χαρακτήρων 17/10/2007 Προγραµµατισµός Συστήµατος 27

Εντολή sort Ταξινόµηση (ανά γραµµή, σαν κείµενο) Με βάση 2η στήλη, σαν κείµενο Με βάση 2η στήλη, Αριθµητική (-n), Αντίστροφη (-r) 17/10/2007 Προγραµµατισµός Συστήµατος 28

Εντολές touch, ln (-s) Αν υπάρχει ήδη, άλλαξε χρόνο τροποποίησης. Αλλιώς δηµιούργησε Σκληρός σύνδεσµος Συµβολικός Σύνδεσµος (-s) ε σβήνει ούτε το.bashrc ούτε το /etc/group 17/10/2007 Προγραµµατισµός Συστήµατος 29

Εντολή ln (συνέχεια) Ίδιο inode 17/10/2007 Προγραµµατισµός Συστήµατος 30

Σκληροί και Συµβολικοί Σύνδεσµοι Σκληροί είκτης σε κοινό αρχείο εν εφαρµόζεται σε καταλόγους Μετονοµασία αρχικού αρχείου δε δηµιουργεί πρόβληµα Αλλαγές σε σύνδεσµο ή αρχικό αρχείο επηρεάζουν και τα 2 Αρχείο σβήνεται όταν ΟΛΟΙ οι δείκτες σε αυτό σβηστούν Συµβολικοί Αντιγράφει µονοπάτι αρχείου ΜΟΝΟ Εφαρµόζεται σε καταλόγους Μετονοµασία αρχικού αρχείου σπάει το σύνδεσµο Αλλαγές σε σύνδεσµο ή αρχικό αρχείο επηρεάζουν και τα 2 ιαγραφή ΕΝ επηρεάζει αρχικό αρχείο 17/10/2007 Προγραµµατισµός Συστήµατος 31

Θέµα Εξέτασης Όλα ΟΚ Ιδιοκτήτης, αλλά όχι w στο κατάλογο Ο adeli (δεξιά) φτιάχνει συνδέσµους σε αρχεία του spro (αριστερά). Πρέπει να σβήσουν όλοι οι δείκτες σε 1 αρχείο για να διαγραφεί αυτό. Όλα καλά αν έχει x στον ~spro/popo και w στον δικό του. Ο spro διαγράφει µε wx στο ~adeli/popo. 17/10/2007 Προγραµµατισµός Συστήµατος 32

Έντολή cut (-f, -d) -f (επιλογή στηλών που θέλουµε) -d (διαχωριστικό στηλών αν δεν οριστεί είναι το tab \t ) 17/10/2007 Προγραµµατισµός Συστήµατος 33

Εντολές cmp, diff, head (-n), tail (-n) Αν διέφεραν, θα τύπωνε 1ο σηµείο διαφοράς Χωρίς όρισµα, πρώτες 10 γραµµές Πρώτες 2 γραµµές (-n) 17/10/2007 Προγραµµατισµός Συστήµατος 34

Λοιπές Εντολές: echo (-n), date, passwd, hostname, whoami, lpq (-P), lprm (-P) Με αλλαγή γραµµής Χωρίς αλλαγή γραµµής Όνοµα µηχανήµατος Κατάσταση ουράς εκτυπωτή ιαγραφή εργασίας εκτύπωσης 17/10/2007 Προγραµµατισµός Συστήµατος 35

Κέλυφος C (csh ή tcsh) Συχνά το κέλυφος αρχικής σύνδεσης (bash στο Linux) Η εντολή logout αποσυνδέει το χρήστη Με csh (tcsh) δηµιουργείται νεό κέλυφος C Η εντολή exit τερµατίζει ένα κέλυφος C To ~ συµβολίζει τον κατάλογο αφετηρίας Κατά την ενεργοποίηση εκτελείται το ~/.cshrc Κατά την αρχική σύνδεση εκτελείται το ~/.login Κατά την διακοπή της σύνδεσης εκτελείται το ~/.logout 17/10/2007 Προγραµµατισµός Συστήµατος 36

Κέλυφος C (συνέχεια) Προκαθορισµένη είσοδος stdin (πληκτρολόγιο) Προκαθορισµένη έξοδος stdout (οθόνη) Προκαθορισµένη έξοδος διαγνωστικών σφαλµάτων stderr (οθόνη) Για ορισµένες εντολές (cat, lpr, grep, wc, sort, head, tail κτλ) τα ορίσµατα των αρχείων είναι προαιρετικά Αν παραλειφθούν χρησιµοποιείται το stdin Τέλος εισόδου για εντολή 17/10/2007 Προγραµµατισµός Συστήµατος 37

Ανακατευθύνσεις Είσοδος από το.screenrc Ηµεροµηνία στο a_file Το > δεν γράφει σε υπάρχον αρχείο Το >! οµως ναι Ανακατεύθυνση stdout και stderr Γράψε πάνω στο αρχείο ΠΡΟΣΟΧΗ: Για τα υπάρχοντα αρχεία, αν η συµπεριφορά είναι διαφορετική, γράψτε: set noclobber 17/10/2007 Προγραµµατισµός Συστήµατος 38

Ανακατευθύνσεις µε προσάρτηση Γράψε έξοδο του date στο ΤΕΛΟΣ του c_file Γράψε µε έµφαση στο c_file τα στατιστικά του.bashrc Προσάρτηση stdout και stderr Τύπωσε ταξινοµηµένες τις τελευταίες 5 γραµµές του.bashrc 17/10/2007 Προγραµµατισµός Συστήµατος 39

Ακολουθίες και Οµάδες Εντολών (;) Με παρένθεση Με παρένθεση µένεις στο προηγούµενο κατάλογο 17/10/2007 Προγραµµατισµός Συστήµατος 40

Εντολή umask ΠΡΟΣΟΧΗ: Ο αριθµός της umask δείχνει ποια δικαιώµατα ΕΝ θέλουµε να δίνουµε Συγκρίνετε µε chmod 022: Όχι εγγραφή σε οµάδα, υπόλοιπους 077: Όλα κοµµένα σε οµάδα, υπόλοιπους 17/10/2007 Προγραµµατισµός Συστήµατος 41

Μεταχαρακτήρες cd cd 17/10/2007 Προγραµµατισµός Συστήµατος 42

Μεταβλητές Περιβάλλοντος (setenv, unsetenv) Τελευταίες 5 ορισµένες µεταβλητές Ακύρωση εντολής 17/10/2007 Προγραµµατισµός Συστήµατος 43

Τοπικές Μεταβλητές Κελύφους C (set, unset) Μεταβλητές που ξεκινάνε από [i-t] ε χρειάζεται τώρα το! Αγνόησε το ^D ως logout 17/10/2007 Προγραµµατισµός Συστήµατος 44

Ιστορία εντολών 17/10/2007 Προγραµµατισµός Συστήµατος 45

Ψευδώνυµα Εντολών (alias, unalias) Για όταν ξεχνιέµαι (windows) Πάντα ερώτηση σε διαγραφή Ακύρωση ψευδώνυµου 17/10/2007 Προγραµµατισµός Συστήµατος 46

ιαχείρηση ιεργασιών ps jobs kill bg fg top Εµφάνιση οδηγιών χρήσης εντολών Εµφάνιση περιεχοµένων καταλόγου Μονοπάτι τρέχοντος καταλόγου Αλλαγή τρέχοντος καταλόγου ηµιουργία καταλόγου Στατιστικά διαχείρισης επεξεργαστή, µνήµης κτλ για προγράµµατα 17/10/2007 Προγραµµατισµός Συστήµατος 47

Εντολές ps (-u), jobs, kill (-9) 17/10/2007 Προγραµµατισµός Συστήµατος 48

Εντολές bg, fg 17/10/2007 Προγραµµατισµός Συστήµατος 49

Εντολή top 17/10/2007 Προγραµµατισµός Συστήµατος 50

Συµπίεση, αποσυµπίεση αρχείων Πολλά προγράµµατα (tar, zip, gzip, gunzip, zcat, uuencode ) Συµπίεση των αρχείων Makefile *.c *.h και του καταλόγου experiments στο αρχείο compr.tar: tar cvf compr.tar Makefile *.c *.h experiments Αποσυµπίεση µε: tar xvf compr.tar Σε.gz χρησιµοποιήστε gunzip Σε.tgz χρησιµοποιήστε gunzip και µετά tar xvf Σε.uue χρησιµοποιήστε uudecode 17/10/2007 Προγραµµατισµός Συστήµατος 51

Κι άλλες Εντολές tr Μετατροπή χαρακτήρων σε αρχεία colrm ιαγραφή στηλών από αρχεία find last script sleep clear Ανεύρεση αρχείων ή καταλόγων Εµφάνιση πρόσφατων συνδέσεων χρηστών Καταγραφή αλληλεπίδρασης µε κέλυφος σε αρχεία Αναµονή για χρονικό διάστηµα Καθάρισµα οθόνης 17/10/2007 Προγραµµατισµός Συστήµατος 52

Εντολές tr (-d), colrm Τύπωσε στην οθόνη το /etc/resolv.conf αντικαθιστώντας τους χαρακτήρες του 56789abc µε τους αντίστοιχους από το 012345xyz Όλα εκτός από τους χαρακτήρες Όλα εκτός από τους χαρακτήρες σε στήλες 8-14 Όλα εκτός από τους χαρακτήρες σε στήλες >= 15 17/10/2007 Προγραµµατισµός Συστήµατος 53

Εντολή find (-name, -exec) Τύπωσε περιεχόµενα από τα αρχεία (-exec την cat εντολή) Τύπωσε όνοµα αρχείων (-print) και τα περιεχόµενά τους 17/10/2007 Προγραµµατισµός Συστήµατος 54

Εντολές last (-n), script, sleep, clear Κατέγραψε τα πάντα από εδώ και πέρα στο my_session Επίσης µε ^D, τέλος καταγραφής 17/10/2007 Προγραµµατισµός Συστήµατος 55

Άλλα Χρήσιµα Ηλεκτρονικό ταχυδροµείο Προγράµµατα mail ή pine Μεταγλωτιστές της C gcc ή cc Προτιµείστε τον gcc 17/10/2007 Προγραµµατισµός Συστήµατος 56

Makefiles Οργάνωση µεταγλώττισης αρχείων Στη µορφή: Στόχος: Απαιτούµενα \t Εντολή Προσοχή στο tab. Τα Απαιτούµενα πρέπει να υλοποιηθούν πριν το Στόχο. Αν τα Απαιτούµενα δεν έχουν αλλάξει, δεν εκτελείται η εντολή Συχνά ο Στόχος του εκτελέσιµου προγράµµατος έχει το όνοµα all Συχνά ο Στόχος clean διαγράφει τα παραγόµενα εκτελέσιµα και *.o 17/10/2007 Προγραµµατισµός Συστήµατος 57

Παράδειγµα Makefile Αν αλλάξει το kbd.c, υπολογίζεται το kbd.o, και στη συνέχεια το edit 17/10/2007 Προγραµµατισµός Συστήµατος 58