Βασικές εντολές

Από Hellug Wiki

Το παρόν άρθρο περιγράφει μερικές βασικές εντολές της γραμμής εντολών.

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

Το άρθρο προορίζεται για αρχάριους και περιλαμβάνει μόνο τις πιο απλές ή συνήθεις μορφές των εντολών.

Γενικά

Σύνταξη εντολών

Οι εντολές αποτελούνται από το όνομα της εντολής και μηδέν, ένα ή περισσότερα ορίσματα.

Ο χρήστης γράφει τις εντολές χρησιμοποιώντας λατινικούς χαρακτήρες και πατώντας enter στο τέλος κάθε γραμμής. Το Linux διακρίνει τα πεζά από τα κεφαλαία γράμματα, οπότε πχ η εντολή ls δεν μπορεί να δοθεί ως LS.

Η σύνταξη των εντολών συνήθως παρουσιάζεται ως εξής:

command_name <argument>

Το command_name είναι το όνομα της εντολής και με < και > εμφανίζονται τα ορίσματα. Για παράδειγμα, αν η σύνταξη είναι:

mv <oldfile> <newfile>

τότε σημαίνει ότι το όνομα της εντολής είναι mv και μετά ακολουθούν δύο ορίσματα.

Τρέχων φάκελος

Ο χρήστης της γραμμής εντολών βρίσκεται κάθε χρονική στιγμή στον τρέχοντα φάκελο (current directory). Αν ο χρήστης δεν επιλέξει διαφορετικά, τότε κάθε εντολή που δίνει επιδρά στα περιεχόμενα αυτού του φακέλου.

Πχ έστω πως στον υπολογιστή υπάρχουν δύο φάκελοι dir1 και dir2 που ο καθένας περιέχει ένα αρχείο με όνομα file.txt. Αν ο τρέχων φάκελος είναι ο dir1 και ο χρήστης δώσει την εντολή διαγραφής του αρχείου file.txt, τότε αυτή θα διαγράψει το αρχείο στο dir1 χωρίς να πειράξει εκείνο στο φάκελο dir2.

Συντομεύσεις:

  • Η διαδρομή προς τον τρέχοντα φάκελο μπορεί να συντομευθεί με μια τελεία: .
  • Η διαδρομή προς τον φάκελο στον οποίο περιέχεται ο τρέχων μπορεί να συντομευθεί με δύο τελείες: ..
  • Η διαδρομή προς το home του κάθε χρήστη μπορεί να συντομευθεί με την κυματιστή παύλα: ~

man pages

Το Linux διαθέτει εκτεταμένη τεκμηρίωση με τη μορφή man pages (από το 'manual'). Μπορούμε να δούμε τις πληροφορίες για κάποια εντολή με:

man <command>

Για παράδειγμα, αν θέλουμε να δούμε την τεκμηρίωση για την εντολή ls:

man ls

Διαχείριση φακέλων

cd

Αλλάζει τον τρέχοντα φάκελο. Η σύνταξή της είναι:

cd <new current directory>

mkdir

Δημιουργεί ένα νέο φάκελο. Η σύνταξή της είναι:

mkdir <name of new directory>

rmdir

Σβήνει ένα υπάρχοντα άδειο φάκελο. Η σύνταξή της είναι:

rmdir <name of existing directory>

pwd

Εμφανίζει το πλήρες όνομα του τρέχοντος φακέλου. Η σύνταξή της είναι:

pwd

Διαχείριση αρχείων

ls

Εμφανίζει τα περιεχόμενα ενός φακέλου. Για να δούμε αυτά του τρέχοντος φακέλου η σύνταξή της είναι:

ls

Μπορούμε να ζητήσουμε εμφάνιση περισσότερων πληροφοριών, όπως το μέγεθος, με την παράμετρο -l:

ls -l

cp

Δημιουργεί αντίγραφο ενός αρχείου. Η σύνταξή της είναι:

cp <source> <target>

rm

Διαγράφει ένα υπάρχον αρχείο. Η σύνταξή της είναι:

rm <file>

Προσοχή: Αρχεία που διαγράφονται με την εντολή αυτή δεν μπορούν να ανακτηθούν. Εξ ορισμού η εντολή rm δεν περιμένει επιβεβαίωση.

mv

Μετονομάζει ένα υπάρχον αρχείο. Η σύνταξή της είναι:

mv <oldfile> <newfile>

cat

Εμφανίζει τα περιεχόμενα ενός αρχείου στην κονσόλα. Η σύνταξή της είναι:

cat <file>

find

Αναζητεί ένα αρχείο και εμφανίζει τη διαδρομή προς αυτό.

Η πλέον απλή μορφή αναζητά ένα ή περισσότερα αρχεία με όνομα <filename>, αρχίζοντας από τον τρέχοντα φάκελο και διατρέχοντας όλους τους υποφακέλους:

find . -name <filename>

Αν δε θέλουμε να κάνει διάκριση μεταξύ πεζών/κεφαλαίων στο όνομα, τότε χρησιμοποιούμε την παράμετρο -iname αντί για την -name:

find . -iname <filename>

Αν δε θέλουμε να ψάξουμε σε προσαρτημένα συστήματα αρχείων (mounted filesystems) τότε προσθέτουμε την παράμετρο -xdev. Αυτό μπορεί να είναι χρήσιμο πχ στο ubuntu, που κάποια συστήματα αρχείων προσαρτούνται στο ~/.gvfs και συνεπώς αν γίνει αναζήτηση με αρχή το ~ τότε θα "ξεφύγει" και προς αυτά.

find . -xdev -name <filename>

Παράδειγμα της εντολής:

find /usr/bin -name grof*

Αυτό ψάχνει στο φάκελο /usr/bin για αρχεία με όνομα που αρχίζει από grof και ακολουθείται (το όνομα) από μηδέν ή περισσότερους χαρακτήρες.