+ All Categories
Home > Documents > Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως...

Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως...

Date post: 22-Jun-2020
Category:
Upload: others
View: 6 times
Download: 0 times
Share this document with a friend
35
Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Εθνικό Μετσόβιο Πολυτεχνείο Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού Σιέττος Κωνσταντίνος Ενότητα 1 – Διάλεξη 1β
Transcript
Page 1: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Σχολή  Εφαρμοσμένων  Μαθηματικών  και  Φυσικών  Επιστημών  Εθνικό  Μετσόβιο  Πολυτεχνείο  

Προγραμματισμός  με  Εφαρμογές  στην  Επιστήμη  του  Μηχανικού  

Σιέττος Κωνσταντίνος  

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

Page 2: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Το  παρόν  εκπαιδευτικό  υλικό  υπόκειτα  σε  άδειες  χρήσης  Crea%ve  Commons.  Για  εκπαιδευτικό  υλικό,  όπως  εικόνες,  που  υπόκειται  σε  άδεια  χρήσης  άλλου  τύπου,  αυτή  πρέπει  να  αναγράφεται  ρητώς.  

Άδεια  Χρήσης  

Page 3: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

To To Λειτουργικό Σύστηµα Λειτουργικό Σύστηµα LINUXLINUX

ΣιέττοςΣιέττος ΚωνσταντίνοςΚωνσταντίνος

Page 4: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

ΠεριεχόµεναΠεριεχόµενα

•• Είναι ένα πλήρως Είναι ένα πλήρως networked 32/64networked 32/64--Bit UnixBit Unix--like like

Λειτουργικό ΣύστηµαΛειτουργικό Σύστηµα

–– ΜεταγλωτιστέςΜεταγλωτιστές όπως όπως C, C++, FortranC, C++, Fortran

–– Εργαλεία ∆ικτύου όπωςΕργαλεία ∆ικτύου όπως sshssh, telnet, ftp, ping, , telnet, ftp, ping, traceroutetraceroute

•• Παρέχει Παρέχει X Windows GUI X Windows GUI

•• Μπορεί να συνυπάρξει µε άλλα Λειτουργικά Συστήµατα Μπορεί να συνυπάρξει µε άλλα Λειτουργικά Συστήµατα

(Windows)(Windows)

•• Credits: Credits: ΚαθΚαθ. Γιάννη . Γιάννη ΠαλυβόΠαλυβό, , Unix Unix µια πρώτη γνωριµία, γ’ έκδοση, ΕΜΠµια πρώτη γνωριµία, γ’ έκδοση, ΕΜΠ

Page 5: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

ΠροέλευσηΠροέλευση

•• Ο δηµιουργός του είναι ο Ο δηµιουργός του είναι ο LinusLinus TorvaldsTorvalds το 1991το 1991

–– Με βοήθεια από προγραµµατιστές από όλο τον κόσµοΜε βοήθεια από προγραµµατιστές από όλο τον κόσµο

•• Σήµερα χρησιµοποιείται σε περισσότερους 10 εκατ. Σήµερα χρησιµοποιείται σε περισσότερους 10 εκατ.

υπολογιστέςυπολογιστές

–– Περισσότεροι απόΠερισσότεροι από 10001000 προγραµµατιστές δουλεύουν στην προγραµµατιστές δουλεύουν στην –– Περισσότεροι απόΠερισσότεροι από 10001000 προγραµµατιστές δουλεύουν στην προγραµµατιστές δουλεύουν στην

εξέλιξη τουεξέλιξη του

•• Όµως ουσιαστικά είναι το Όµως ουσιαστικά είναι το UNIXUNIX για για PcPcιαια

•• Το Το UNIX UNIX ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων

Bell Bell της ΑΤ&Ττης ΑΤ&Τ το 1969το 1969

Page 6: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

ΠροέλευσηΠροέλευση: UNIX: UNIX

•• Το 1974Το 1974--1975 η 61975 η 6ηη Έκδοση τουΈκδοση του UNIX UNIX δόθηκε δόθηκε

ελεύθερα στα Πανεπιστήµιαελεύθερα στα Πανεπιστήµια

•• Η πιο επιτυχηµένη έκδοση του είναι η Η πιο επιτυχηµένη έκδοση του είναι η B.S.D.B.S.D.•• Η πιο επιτυχηµένη έκδοση του είναι η Η πιο επιτυχηµένη έκδοση του είναι η B.S.D.B.S.D.

BBerkeley erkeley SSoftware oftware DDistributionistribution

•• Η δύναµη του προέρχεται από τις σχέσεις Η δύναµη του προέρχεται από τις σχέσεις

µεταξύ των προγραµµάτων παρά από τα µεταξύ των προγραµµάτων παρά από τα

προγράµµατα αυτά προγράµµατα αυτά καθ΄αυτάκαθ΄αυτά..

Page 7: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Λογισµικό Λογισµικό Open SourceOpen Source

•• Είναι ελεύθερο!Είναι ελεύθερο!

•• Μπορείτε να το κατεβάσετε από το Μπορείτε να το κατεβάσετε από το InternetInternet

•• π.χ.π.χ. RedHatRedHat http://www.redhat.comhttp://www.redhat.com//•• π.χ.π.χ. RedHatRedHat http://www.redhat.comhttp://www.redhat.com//

•• Τι περιλαµβάνειΤι περιλαµβάνει::

–– Linux kernelLinux kernel

–– X Windows system X Windows system και και GUIGUI

–– Web, eWeb, e--mail, FTP serversmail, FTP servers

–– Υποστήριξη εγκατάστασης και προσαρµογήςΥποστήριξη εγκατάστασης και προσαρµογής

Page 8: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Το λειτουργικό σύστηµα Το λειτουργικό σύστηµα LinuxLinux

Περιέχει όλες τιςΠεριέχει όλες τις

Στοιχειώδεις εντολέςΣτοιχειώδεις εντολές

του συστήµατοςτου συστήµατος

∆ιαχειρίζεται το∆ιαχειρίζεται το

ΥλικόΥλικό

ΠυρήναςΠυρήνας

ΚέλυφοςΚέλυφος

ΕργαλείαΕργαλεία

ΥλικόΥλικό

ΜεταφράζειΜεταφράζει

τις εντολές τουτις εντολές του

χρήστηχρήστη

Είναι Είναι

προγραµµατιζόµενοπρογραµµατιζόµενο

ΠρογράµµαταΠρογράµµατα

που εκτελούνταιπου εκτελούνται

από το κέλυφοςαπό το κέλυφος

Page 9: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Το λειτουργικό σύστηµα Το λειτουργικό σύστηµα Linux: OLinux: O

ΠυρήναςΠυρήνας

•• Εκτελεί χαµηλού επιπέδου εργασίεςΕκτελεί χαµηλού επιπέδου εργασίες

•• Πρόκειται ουσιαστικά για ένα µεγάλο Πρόκειται ουσιαστικά για ένα µεγάλο

πρόγραµµα πρόγραµµα

–– Συντηρεί τις ενεργές διεργασίες του συστήµατοςΣυντηρεί τις ενεργές διεργασίες του συστήµατος–– Συντηρεί τις ενεργές διεργασίες του συστήµατοςΣυντηρεί τις ενεργές διεργασίες του συστήµατος

–– ∆ιαχειρίζεται το σύστηµα αρχείων∆ιαχειρίζεται το σύστηµα αρχείων

–– Υπεύθυνο για την µνήµη και τους δίσκουςΥπεύθυνο για την µνήµη και τους δίσκους

–– Γραµµένο σε γλώσσα Γραµµένο σε γλώσσα CC

•• ∆εν είναι πρακτικό να γράφονται προγράµµατα ∆εν είναι πρακτικό να γράφονται προγράµµατα

που επικοινωνούν µε την µηχανή σε ένα τόσο που επικοινωνούν µε την µηχανή σε ένα τόσο

στοιχειώδες επίπεδοστοιχειώδες επίπεδο

Page 10: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Το λειτουργικό σύστηµα Το λειτουργικό σύστηµα Linux:Linux: Το Το

κέλυφοςκέλυφος

•• Αποτελεί µια ενδιάµεση επιφάνεια µεταξύ του Αποτελεί µια ενδιάµεση επιφάνεια µεταξύ του

πυρήνα και του χρήστηπυρήνα και του χρήστη

•• Πρόκειται ουσιαστικά για τον ερµηνευτή των Πρόκειται ουσιαστικά για τον ερµηνευτή των

εντολών του χρήστηεντολών του χρήστηεντολών του χρήστηεντολών του χρήστη

•• Ουσιαστικά αποσκοπεί στην καλύτερη Ουσιαστικά αποσκοπεί στην καλύτερη

αλληλεπίδραση χρήστη αλληλεπίδραση χρήστη –– µηχανήςµηχανής

•• Έχει ενσωµατωµένες δικές του εντολές αλλά ο Έχει ενσωµατωµένες δικές του εντολές αλλά ο

βασικός του ρόλος είναι να εκτελεί άλλα βασικός του ρόλος είναι να εκτελεί άλλα

προγράµµαταπρογράµµατα

Page 11: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Το λειτουργικό σύστηµα Το λειτουργικό σύστηµα Linux:Linux: Τα Τα

εργαλείαεργαλεία

•• Γνωστά και ως εφαρµογές (Γνωστά και ως εφαρµογές (utilities)utilities)

•• ∆εν υπάρχει ενδογενής διαφορά ανάµεσα σε ένα ∆εν υπάρχει ενδογενής διαφορά ανάµεσα σε ένα

πρόγραµµα γραµµένο από χρήστη και σε αυτά που πρόγραµµα γραµµένο από χρήστη και σε αυτά που

συνοδεύουν το σύστηµασυνοδεύουν το σύστηµασυνοδεύουν το σύστηµασυνοδεύουν το σύστηµα

•• Ανάµεσα σε αυτά είναι οι βασικές γλώσσες Ανάµεσα σε αυτά είναι οι βασικές γλώσσες

προγραµµατισµού προγραµµατισµού Fortran, CFortran, C

Page 12: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Τι συµβαίνει όταν Τι συµβαίνει όταν

πληκτρολογήσουµε µια εντολή?πληκτρολογήσουµε µια εντολή?

•• % % cat filecat file

•• ToTo σύµβολο % αποτελεί ένα προκαθορισµένο σύµβολο % αποτελεί ένα προκαθορισµένο

προτρεπτικό του προτρεπτικό του κελύφουςκελύφους CC

•• Η εντολή Η εντολή cat cat είναι µια είναι µια εφαρµογήεφαρµογή που χρησιµεύει που χρησιµεύει •• Η εντολή Η εντολή cat cat είναι µια είναι µια εφαρµογήεφαρµογή που χρησιµεύει που χρησιµεύει

στο να δίνει σαν έξοδο της το περιεχόµενο του στο να δίνει σαν έξοδο της το περιεχόµενο του

αρχείου ‘αρχείου ‘file’file’ στην οθόνη. Είναι µια εφαρµογή στην οθόνη. Είναι µια εφαρµογή

γραµµένη στην γραµµένη στην CC

•• H H εµπλοκή του πυρήνα είναι αθέατη. Για να εµπλοκή του πυρήνα είναι αθέατη. Για να

εκτελεσθείεκτελεσθεί η εντολή πρέπει να αναλάβει δράση ο η εντολή πρέπει να αναλάβει δράση ο

πυρήνας πυρήνας

Page 13: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Το σύστηµα αρχείωνΤο σύστηµα αρχείων

•• Το Το Linux Linux βλέπει τα πάντα ως αρχείαβλέπει τα πάντα ως αρχεία

•• Περιφερειακές µονάδες όπως εκτυπωτές, οθόνες Περιφερειακές µονάδες όπως εκτυπωτές, οθόνες

κ.λ.πκ.λ.π. έχουν την ίδια βασική µεταχείριση όπως τα . έχουν την ίδια βασική µεταχείριση όπως τα

κοινά αρχείακοινά αρχείακοινά αρχείακοινά αρχεία

•• Υπάρχουν πέντε διαφορετικά είδη αρχείωνΥπάρχουν πέντε διαφορετικά είδη αρχείων

(α) Κοινά αρχεία ((α) Κοινά αρχεία (ordinary files)ordinary files)

(β) Αρχεία καταλόγων(β) Αρχεία καταλόγων (directory files)(directory files)

(γ) Αρχεία συσκευών(γ) Αρχεία συσκευών (device files)(device files)

(δ) Κοµβικά αρχεία(δ) Κοµβικά αρχεία (sockets)(sockets)

((ε) Αρχεία διοχέτευσης (ε) Αρχεία διοχέτευσης (pipes)pipes)

Page 14: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Βασικοί Κατάλογοι του συστήµατοςΒασικοί Κατάλογοι του συστήµατος

•• //binbin κατάλογος εντολών κατάλογος εντολών LinuxLinux

•• /home/home κατάλογος που κατάλογος που αποθηκεύαποθηκεύooνταινται οι οι homehome

κατάλογοι των χρηστώνκατάλογοι των χρηστών

•• //devdev κατάλογος αρχείων συσκευώνκατάλογος αρχείων συσκευών

•• /etc/etc κατάλογος αρχείων συντήρησης του κατάλογος αρχείων συντήρησης του

συστήµατος (σαν το συστήµατος (σαν το Control Panel Control Panel σταστα

Windows)Windows)

•• //tmptmp κατάλογος αποθήκευσης προσωρινών κατάλογος αποθήκευσης προσωρινών

αρχείωναρχείων

•• //usrusr κατάλογος αρχείων, προγραµµάτων κ.λπ. κατάλογος αρχείων, προγραµµάτων κ.λπ.

για τους χρήστεςγια τους χρήστες

Page 15: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

∆ιοχέτευση Εξόδου∆ιοχέτευση Εξόδου

•• lsls ––ll >output>output

ΠαρουσιάζειΠαρουσιάζει τατα ππεριεχόµεναεριεχόµενα τουτου τρέχοντοςτρέχοντος καταλόγουκαταλόγου µεµε ππλήρηλήρη

στοιχείαστοιχεία

Το αποτέλεσµα της εντολής Το αποτέλεσµα της εντολής lsls ––l l διοχετεύεται διοχετεύεται

στο αρχείο εξόδου στο αρχείο εξόδου outputoutput

Page 16: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

∆οµή των καταλόγων και διάδροµοι∆οµή των καταλόγων και διάδροµοι

……

……

folder1folder1 folder2folder2 ……

∆ιάδροµος (∆ιάδροµος (Path)Path)

home/Fodler1/Folder3/folder2home/Fodler1/Folder3/folder2

((απόλυτος διάδροµος)απόλυτος διάδροµος)

σχετικός διάδροµοςσχετικός διάδροµοςπεριγράφονται από ένα περιγράφονται από ένα

συγκεκριµένοσυγκεκριµένο

σηµείο της ιεραρχίαςσηµείο της ιεραρχίας

Page 17: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ειδικοί συµβολισµοίΕιδικοί συµβολισµοί

–– / / Ο κατάλογος ρίζας (Ο κατάλογος ρίζας (root directory)root directory)

–– .. O O τρέχων κατάλογος τρέχων κατάλογος The current directoryThe current directory

–– .... Ο προηγούµενος κατάλογος στο δέντροΟ προηγούµενος κατάλογος στο δέντρο

–– ~~ Ο Ο homehome κατάλογοςκατάλογος (home directory)(home directory)–– ~~ Ο Ο homehome κατάλογοςκατάλογος (home directory)(home directory)

•• ΠαραδείγµαταΠαραδείγµατα::

–– ./a ./a το ίδιο αποτέλεσµα όπως το το ίδιο αποτέλεσµα όπως το aa

–– ../folder1/file2 ../folder1/file2 πήγαινε πάνω ένα επίπεδο και κοίτα στον πήγαινε πάνω ένα επίπεδο και κοίτα στον

κατάλογο κατάλογο folder folder για το αρχείο για το αρχείο file2file2

Page 18: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Άδειες αρχείων (Άδειες αρχείων (File Permissions)File Permissions)

--rwxrwxrrwxrwxr--x 1 x 1 torotoro thrilosthrilos 5224 Mar 01 03:22 hello5224 Mar 01 03:22 hello

--rwrw--rwrw--rr---- 1 1 torotoro thrilosthrilos 221 Mar 01 03:59 221 Mar 01 03:59 hello.fhello.f

--rwrw--rwrw--rr---- 1 1 torotoro thrilosthrilos 1514 Mar 01 03:59 1514 Mar 01 03:59 hello.shello.s

drwxrwxrdrwxrwxr--x 7 x 7 torotoro thrilosthrilos 1024 Mar 01 14:52 goals1024 Mar 01 14:52 goals

lsls ––ll

drwxrwxrdrwxrwxr--x 7 x 7 torotoro thrilosthrilos 1024 Mar 01 14:52 goals1024 Mar 01 14:52 goals

ΧρήστηςΧρήστης ΟµάδαΟµάδα ((group)group)

ΆδειεςΆδειες --rwxrwxrwxrwxrwxrwx

Others permissions Others permissions

Group permissionsGroup permissions

Owner permissionsOwner permissions

Directory flag (d=directory)Directory flag (d=directory)

Page 19: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

BBασικέςασικές Εντολές Εντολές LinuxLinux

•• pwdpwd ::Εµφανίζει τον παρόντα Εµφανίζει τον παρόντα

κατάλογοκατάλογο

•• cdcd <dir><dir> ::µεταβάλει τον παρόντα µεταβάλει τον παρόντα •• cdcd <dir><dir> ::µεταβάλει τον παρόντα µεταβάλει τον παρόντα

κατάλογο στον κατάλογο στον κατάλογο κατάλογο dirdir

•• lsls ::παρουσιάζει τα αρχεία στον παρουσιάζει τα αρχεία στον

τρέχοντα κατάλογο τρέχοντα κατάλογο

•• lsls --ll ::παρουσιάζει τα αρχεία στον παρουσιάζει τα αρχεία στον

τρέχοντα κατάλογο τρέχοντα κατάλογο µε πλήρη στοιχείαµε πλήρη στοιχεία

Page 20: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

BBασικέςασικές Εντολές Εντολές LinuxLinux

•• cpcp <<fromfilefromfile> <> <tofiletofile>>Αντιγράφει το αρχείο Αντιγράφει το αρχείο <<fromfilefromfile> > στο αρχείοστο αρχείο<<tofiletofile> >

•• mvmv <<fromfilefromfile> <> <tofiletofile>>Μεταφορά ονόµατος του αρχείου Μεταφορά ονόµατος του αρχείου <<fromfilefromfile> > Μεταφορά ονόµατος του αρχείου Μεταφορά ονόµατος του αρχείου <<fromfilefromfile> > σεσε<<tofiletofile>>

•• rmrm <file><file>∆ιαγραφή του αρχείου µε το όνοµα ∆ιαγραφή του αρχείου µε το όνοµα <file><file>

•• mkdirmkdir <<newdirnewdir>>∆ηµιουργία ενός νέου καταλόγου µε το όνοµα ∆ηµιουργία ενός νέου καταλόγου µε το όνοµα <<newdirnewdir>>

Page 21: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

BBασικέςασικές Εντολές Εντολές LinuxLinux

•• rmdirrmdir <dir><dir>∆ιαγραφή ενός άδειου καταλόγου∆ιαγραφή ενός άδειου καταλόγου

•• atat <hour> <day> <file> <hour> <day> <file> Εκτέλεση του αρχείου Εκτέλεση του αρχείου filefile σε ορισµένη ώρα και σε ορισµένη ώρα και ηµέραηµέραηµέραηµέρα

•• calcal <month> <year> <month> <year> Παρουσίαση ηµερολογίου του µήνα Παρουσίαση ηµερολογίου του µήνα month month το χρόνο το χρόνο yearyear

•• catcat ––n n ––s s <file> <file> Εµφάνιση του αρχείου Εµφάνιση του αρχείου filefile

--nn : : µε αρίθµηση γραµµώνµε αρίθµηση γραµµών

--ss : : µε αφαίρεση κενών γραµµώνµε αφαίρεση κενών γραµµών

Page 22: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

BBασικέςασικές Εντολές Εντολές LinuxLinux

•• catcat <file1> <file2> > <file3><file1> <file2> > <file3>

Ένωση των αρχείων Ένωση των αρχείων file1file1 και και file2file2 σε ένα τρίτο σε ένα τρίτο αρχείο µε αρχείο µε όνοµα όνοµα file3file3

•• clearclear•• clearclear

Καθαρισµός της οθόνης του τερµατικούΚαθαρισµός της οθόνης του τερµατικού

•• killkill <choice> <process><choice> <process>

Τερµατισµός µια ενεργής διεργασίαςΤερµατισµός µια ενεργής διεργασίας

choice: choice: --9 9 υποχρεωτικός τερµατισµόςυποχρεωτικός τερµατισµός

Page 23: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

BBασικέςασικές Εντολές Εντολές LinuxLinux

•• chmodchmod <who> <what> > <permission> <file><who> <what> > <permission> <file>

Αλλαγή του τρόπου προσπέλασης του αρχείου Αλλαγή του τρόπου προσπέλασης του αρχείου filefile

whowho whatwhat permissionpermission

u: o u: o χρήστηςχρήστης +: +: προσθέτει δικαίωµαπροσθέτει δικαίωµα r:r: ανάγνωσηςανάγνωσηςu: o u: o χρήστηςχρήστης +: +: προσθέτει δικαίωµαπροσθέτει δικαίωµα r:r: ανάγνωσηςανάγνωσης

g: g: οµάδα χρήστηοµάδα χρήστη -- ::αφαιρείαφαιρεί δικαίωµαδικαίωµα w: w: γραφήςγραφής

οο: : λοιποίλοιποί ==: : καθορίζει δικαίωµα απόλυτακαθορίζει δικαίωµα απόλυτα x: x: εκτέλεσηςεκτέλεσης

a: a: όλοιόλοι

--rwxrwxrwxrwxrwxrwxOthers permissionsOthers permissions

Group permissionsGroup permissions

Owner permissionsOwner permissions

Directory flag (d=directory)Directory flag (d=directory)

Page 24: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

BBασικέςασικές Εντολές Εντολές LinuxLinux

•• manman <command><command>

Εµφάνιση πληροφοριών (Εµφάνιση πληροφοριών (help) help) για την για την εντολή εντολή commandcommand

•• whowho•• whowho

Εµφάνιση των ποιων είναι στο σύστηµα Εµφάνιση των ποιων είναι στο σύστηµα

•• whoamiwhoami

Εµφάνιση της ταυτότητας του χρήστη Εµφάνιση της ταυτότητας του χρήστη

Page 25: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ο επεξεργαστής κειµένου Ο επεξεργαστής κειµένου vivi

• O vi (visual) editor (επεξεργαστής κειµένου) είναι ο βασικός και µε

µεγάλες δυνατότητες επεξεργαστής κειµένου που έρχεται µε όλα τα

συστήµατα UNIX/LINUX.

•Ουσιαστικά πρόκειται για τον βασικό επεξεργαστή κειµένου για το

γράψιµο κώδικα σε περιβάλλοντα UNIX/LINUX. Ένας άλλοςγράψιµο κώδικα σε περιβάλλοντα UNIX/LINUX. Ένας άλλος

δηµοφιλής επεξεργαστής κειµένου για περιβάλλοντα UNIX ο οποίος

θα πρέπει όµως συνήθως να εισαχθεί ως επιπλέον λογισµικό στο

σύστηµα είναι ο emacs.

•Το πλεονέκτηµα του vi σε σχέση µε άλλους επεξεργαστές είναι ότι η

γνώση του επαρκεί για την εργασία σε όλα τα συστήµατα τύπου UNIΧ,παρέχει πλούσιες δυνατότητες επεξεργασίας και τροποποίηση του

κειµένου ενώ είναι ο πλέον κατάλληλος για αργού τύπου συνδέσεις

στο διαδίκτυο.

Page 26: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ο επεξεργαστής κειµένου Ο επεξεργαστής κειµένου vivi

•• vi vi <file><file>Ανοίγει το αρχείο Ανοίγει το αρχείο filefile από την γραµµή 1, στήλη 1.από την γραµµή 1, στήλη 1.

•• Εισαγωγή/ προσθήκη/ διαγραφή κειµένουΕισαγωγή/ προσθήκη/ διαγραφή κειµένου•• Εισαγωγή/ προσθήκη/ διαγραφή κειµένουΕισαγωγή/ προσθήκη/ διαγραφή κειµένου

Μετά το τέλος της εισαγωγής ή της προσθήκης του κειµένου Μετά το τέλος της εισαγωγής ή της προσθήκης του κειµένου θα πρέπει να πατηθεί το πλήκτρο <θα πρέπει να πατηθεί το πλήκτρο <EscEsc> για να επανέλθει ο > για να επανέλθει ο viviσε θέση εκτέλεσης των άλλων εντολώνσε θέση εκτέλεσης των άλλων εντολών

ii : : Εισαγωγή κειµένου πριν το κέρσορα. Εισαγωγή κειµένου πριν το κέρσορα.

aa : : Προσθήκη κειµένου µετά τον κέρσοραΠροσθήκη κειµένου µετά τον κέρσορα

rr : : Αντικατάσταση του χαρακτήρα κάτω από τον Αντικατάσταση του χαρακτήρα κάτω από τον

κέρσορακέρσορα

xx : : ∆ιαγραφή του χαρακτήρα κάτω από τον κέρσορα∆ιαγραφή του χαρακτήρα κάτω από τον κέρσορα

Page 27: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ο επεξεργαστής κειµένου Ο επεξεργαστής κειµένου vivi

•• Εισαγωγή/ προσθήκη/ διαγραφή κειµένουΕισαγωγή/ προσθήκη/ διαγραφή κειµένου

Μετά το τέλος της εισαγωγής ή της προσθήκης του κειµένου Μετά το τέλος της εισαγωγής ή της προσθήκης του κειµένου θα πρέπει να πατηθεί το πλήκτρο <θα πρέπει να πατηθεί το πλήκτρο <EscEsc> για να επανέλθει ο > για να επανέλθει ο viviσε θέση εκτέλεσης των άλλων εντολώνσε θέση εκτέλεσης των άλλων εντολών

dddd : : ∆ιαγραφή ολόκληρης της τρέχουσας γραµµής∆ιαγραφή ολόκληρης της τρέχουσας γραµµήςdddd : : ∆ιαγραφή ολόκληρης της τρέχουσας γραµµής∆ιαγραφή ολόκληρης της τρέχουσας γραµµής

uu : : Αναίρεση της προηγούµενης αλλαγής οπουδήποτε Αναίρεση της προηγούµενης αλλαγής οπουδήποτε στο κείµενοστο κείµενο

οο : : Εισαγωγή µιας νέας γραµµής κάτω από την Εισαγωγή µιας νέας γραµµής κάτω από την τρέχουσατρέχουσα

OO ::Εισαγωγή µιας της γραµµής πάνω από την Εισαγωγή µιας της γραµµής πάνω από την τρέχουσατρέχουσα

Page 28: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ο επεξεργαστής κειµένου Ο επεξεργαστής κειµένου vivi

•• Μετακίνηση του δροµέαΜετακίνηση του δροµέα

jj : : Μετακίνηση µία γραµµή κάτωΜετακίνηση µία γραµµή κάτω

kk : : Μετακίνηση µία γραµµή πάνωΜετακίνηση µία γραµµή πάνωkk : : Μετακίνηση µία γραµµή πάνωΜετακίνηση µία γραµµή πάνω

hh : : Μετακίνηση ένα χαρακτήρα αριστεράΜετακίνηση ένα χαρακτήρα αριστερά

ll ::Μετακίνηση ένα χαρακτήρα δεξιάΜετακίνηση ένα χαρακτήρα δεξιά

<<ctrl>fctrl>f : : Μετακίνηση της οθόνης κατά µια σελίδα κάτωΜετακίνηση της οθόνης κατά µια σελίδα κάτω

<<ctrl>ctrl>bb : : Μετακίνηση της οθόνης κατά µια σελίδα πάνωΜετακίνηση της οθόνης κατά µια σελίδα πάνω

<<ctrl>ctrl>dd : : Μετακίνηση της οθόνης κατά µισή σελίδα κάτωΜετακίνηση της οθόνης κατά µισή σελίδα κάτω<<ctrl>uctrl>u : : Μετακίνηση της οθόνης κατά µισή σελίδα πάνωΜετακίνηση της οθόνης κατά µισή σελίδα πάνω

Page 29: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ο επεξεργαστής κειµένου Ο επεξεργαστής κειµένου vivi

•• Σώσιµο/ διάβασµα/ γράψιµο αρχείωνΣώσιµο/ διάβασµα/ γράψιµο αρχείων

:w:w : : Σώζει το Σώζει το τρέχτρέχooν αρχείο στον δίσκον αρχείο στον δίσκο

::w w filefile : : Σώζει το Σώζει το τρέχτρέχooν αρχείο στον δίσκο µε το νέο όνοµα ν αρχείο στον δίσκο µε το νέο όνοµα ::w w : : Σώζει το Σώζει το τρέχτρέχooν αρχείο στον δίσκο µε το νέο όνοµα ν αρχείο στον δίσκο µε το νέο όνοµα filefile

::56, 128w 56, 128w filefile ::Σώζει τις γραµµές 56 έως 128 του τρέχοντος αρχείου σε Σώζει τις γραµµές 56 έως 128 του τρέχοντος αρχείου σε ένα άλλο αρχείο µε το όνοµα ένα άλλο αρχείο µε το όνοµα filefile

::56, 12856, 128r r filefile ::Στο τρέχον αρχείο και εκεί που είναι ο δροµέας διαβάζει Στο τρέχον αρχείο και εκεί που είναι ο δροµέας διαβάζει (εισάγει) τις γραµµές 56 έως 128 του αρχείου µε το όνοµα (εισάγει) τις γραµµές 56 έως 128 του αρχείου µε το όνοµα filefile

:56,$w >> :56,$w >> filefile : : Γράφει τις γραµµές 56 έως το τέλος του τρέχοντος Γράφει τις γραµµές 56 έως το τέλος του τρέχοντος αρχείου ως συνέχεια στις γραµµές του αρχείου µε όνοµα αρχείου ως συνέχεια στις γραµµές του αρχείου µε όνοµα filefile

Page 30: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ο επεξεργαστής κειµένου Ο επεξεργαστής κειµένου vivi

•• Αναζήτηση/ αντικατάσταση κειµένουΑναζήτηση/ αντικατάσταση κειµένου

/Σειρά χαρακτήρων/Σειρά χαρακτήρων : : Αναζήτηση προς τα εµπρός από τον κέρσορα Αναζήτηση προς τα εµπρός από τον κέρσορα για την «για την «Σειρά χαρακτήρωνΣειρά χαρακτήρων»»

? Σειρά χαρακτήρων? Σειρά χαρακτήρων : : Αναζήτηση προς τα πίσω από τον κέρσορα για Αναζήτηση προς τα πίσω από τον κέρσορα για Αναζήτηση προς τα πίσω από τον κέρσορα για Αναζήτηση προς τα πίσω από τον κέρσορα για την «Σειρά χαρακτήρων»την «Σειρά χαρακτήρων»

nn ::Μετακίνηση προς τα εµπρός από τον κέρσορα για Μετακίνηση προς τα εµπρός από τον κέρσορα για επόµενη αναζήτηση για την «Σειρά χαρακτήρων»επόµενη αναζήτηση για την «Σειρά χαρακτήρων»

ΝΝ ::Μετακίνηση προς τα πίσω από τον κέρσορα για Μετακίνηση προς τα πίσω από τον κέρσορα για επόµενη αναζήτηση για την «Σειρά επόµενη αναζήτηση για την «Σειρά

χαρακτήρων»χαρακτήρων»

:.:. : : Αναγράφεται στο κάτω µέρος της οθόνης ο Αναγράφεται στο κάτω µέρος της οθόνης ο τρέχον αριθµός της γραµµής που βρίσκεται ο δροµέαςτρέχον αριθµός της γραµµής που βρίσκεται ο δροµέας

Page 31: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ο επεξεργαστής κειµένου Ο επεξεργαστής κειµένου vivi

•• Αναζήτηση/ αντικατάσταση κειµένουΑναζήτηση/ αντικατάσταση κειµένου

:=:= : : Αναγράφεται στο κάτω µέρος της οθόνης ο συνολικός Αναγράφεται στο κάτω µέρος της οθόνης ο συνολικός αριθµός των γραµµώναριθµός των γραµµών

:%s/:%s/gggggggggg//rrrrrrrrrr// : : Αναζήτησε την σειρά χαρακτήρων Αναζήτησε την σειρά χαρακτήρων gggggggggg και και αντικατέστησε την µε την σειρά χαρακτήρων αντικατέστησε την µε την σειρά χαρακτήρων rrrrrrrr για για την πρώτη εµφανιζόµενη περίπτωση σε κάθε γραµµήτην πρώτη εµφανιζόµενη περίπτωση σε κάθε γραµµή

:%s/:%s/gggggggggg//rrrrrrrrrr/g/g : : Αναζήτησε την σειρά χαρακτήρων Αναζήτησε την σειρά χαρακτήρων gggggggggg και και αντικατέστησε την µε την σειρά χαρακτήρων αντικατέστησε την µε την σειρά χαρακτήρων rrrrrrrr για για την όλες τις εµφανιζόµενες περιπτώσεις σε κάθε την όλες τις εµφανιζόµενες περιπτώσεις σε κάθε γραµµήγραµµή

:g/^/m0:g/^/m0 : : Αντιστροφή όλων των γραµµών Αντιστροφή όλων των γραµµών !!

Page 32: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

Ο επεξεργαστής κειµένου Ο επεξεργαστής κειµένου vivi

•• Κλείσιµο του Κλείσιµο του vivi

:q :q (και ENTER(και ENTER) ) : : Έξοδος από τον Έξοδος από τον vivi χωρίς εγγραφή του χωρίς εγγραφή του αρχείου στον δίσκοαρχείου στον δίσκο

:w:wq q : : Έξοδος από τον Έξοδος από τον vivi µε εγγραφή του αρχείου µε εγγραφή του αρχείου στον δίσκο µε το τρέχον όνοµαστον δίσκο µε το τρέχον όνοµαστον δίσκο µε το τρέχον όνοµαστον δίσκο µε το τρέχον όνοµα

:x :x : : Έξοδος από τον Έξοδος από τον vivi µε εγγραφή του αρχείου µε µε εγγραφή του αρχείου µε διαφορετικό όνοµα στον δίσκο από το όνοµα µε το διαφορετικό όνοµα στον δίσκο από το όνοµα µε το οποίο ανοίχθηκε ο οποίο ανοίχθηκε ο vivi

:q! :q! : : Έξοδος από τον Έξοδος από τον vivi χωρίς εγγραφή του αρχείου στον χωρίς εγγραφή του αρχείου στον δίσκο κατευθείαν χωρίς περαιτέρω επιβεβαίωση δίσκο κατευθείαν χωρίς περαιτέρω επιβεβαίωση

:w:wqq!! : : Έξοδος από τον Έξοδος από τον vivi µε εγγραφή του αρχείου στον µε εγγραφή του αρχείου στον δίσκο µε το τρέχον όνοµα χωρίς περαιτέρω δίσκο µε το τρέχον όνοµα χωρίς περαιτέρω επιβεβαίωσηεπιβεβαίωση

Page 33: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

ΟΟ µεταγλωτιστήςµεταγλωτιστής της της Fortran 77Fortran 77

•• Μορφή ΕντολήςΜορφή Εντολής για για

f77 <f77 <επιλογή> επιλογή> file.ffile.f

Τα αρχεία µε κατάληξη *.Τα αρχεία µε κατάληξη *.f f θεωρούνται πηγαίος κώδικας θεωρούνται πηγαίος κώδικας Τα αρχεία µε κατάληξη *.Τα αρχεία µε κατάληξη *.f f θεωρούνται πηγαίος κώδικας θεωρούνται πηγαίος κώδικας ((source code)source code)

Page 34: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

ΟΟ µεταγλωτιστήςµεταγλωτιστής της της Fortran 77Fortran 77

•• Απλές κλήσεις του Απλές κλήσεις του ΜεταγλωτιστήΜεταγλωτιστή

ΚλήσηΚλήση Παραγόµενο αρχείοΠαραγόµενο αρχείο Είδος ΑρχείουΕίδος Αρχείου

% % f77 f77 file.ffile.f a.outa.out εκτελέσιµοεκτελέσιµο

% % f77 file1.ff77 file1.f file2.f … file2.f … --cc file1.o file2.o …file1.o file2.o …% % f77 file1.ff77 file1.f file2.f … file2.f … --cc file1.o file2.o …file1.o file2.o …µεταγλωτισµόςµεταγλωτισµός

συνδέσιµοσυνδέσιµο

% % f77 f77 ––ο όνοµαο όνοµα--exe file1.o file2.o …exe file1.o file2.o … όνοµαόνοµα--exeexe εκτελέσιµοεκτελέσιµο

% % f77 f77 file.ffile.f ––o o όνοµαόνοµα--exeexe όνοµαόνοµα--exeexe εκτελέσιµοεκτελέσιµο

% % f77 f77 file.ffile.f --gg για χρήση του για χρήση του dbxdbx Για ανεύρεση Για ανεύρεση λαθώνλαθών

% % dbxdbx

Page 35: Class A Lecture 1b [modalita compatibilita] · • Το unix unix ξεκίνησε ως εσωτερική υπόθεση των Εργαστηρίων bell της ΑΤ &ΤΤ το

•  Το  παρόν  εκπαιδευτικό  υλικό  έχει  αναπτυχθεί  στα  πλαίσια  του  εκπαιδευτικόυ  έργου  του  διδάσκοντα  

•  Το  έργο  «Ανοικτά  Ακαδημαϊκά  Μαθήματα  Ε.Μ.Π.»  έχει  χρηματοδοτήσει  μόνο  την  αναδιαμόρφωση  του  εκπαιδευτικού  υλικού.  

•  Το  έργο  υλοποιείται  στο  πλαίσιο  του  Επιχειρησιακού  Προγράμματος  «Εκπαίδευση  και  Δια  Βίου  Μάθηση»  και  συγχρηματοδοτείται  από  την  Ευρωπαϊκή  Ένωση  (Ευρωπαϊκό  Κοινωνικό  Ταμείο)  και  από  εθνικού  πόρους.  

Χρηματοδότηση  


Recommended