Δομή εντολών
Οι περισσότερες εντολές (ενδογενείς ή μη) προσφέρουν κάποιον τρόπο παραμετροποίησης, ώστε το αποτέλεσμα της εκτέλεσής τους να προσαρμόζεται κάθε φορά στις ανάγκες του χρήστη. Ένας τρόπος παραμετροποίησης είναι με αρχείο ρυθμίσεων – που συνήθως βρίσκεται στον κατάλογο /etc. Ένας άλλος, πιο άμεσος τρόπος παραμετροποίησης, είναι στην γραμμή εντολών κατά την εισαγωγή της εντολής. Ας πάρουμε για παράδειγμα την εντολή παρουσίασης των περιεχομένων καταλόγου, ls (list).
Η εντολή ls από μόνη της επιστρέφει τα περιεχόμενα ενός καταλόγου.
feanor@silmaril:/$ ls bin cdrom etc home lib mnt proc sbin usr vmlinuz boot dev floppy initrd lost+found opt root tmp var
Αν στην εντολή ls δώσετε την επιλογή -l, το αποτέλεσμα θα είναι αρκετά πιο λεπτομερές:
feanor@silmaril:/$ ls -l total 56 drwxr-xr-x 2 root root 2048 2003-06-09 16:36 bin drwxr-xr-x 2 root root 1024 2003-05-23 09:29 boot drwxr-xr-x 2 root root 1024 2002-12-23 11:13 cdrom drwxr-xr-x 1 root root 0 2002-12-23 02:00 dev drwxr-xr-x 111 root root 6144 2003-06-11 16:37 etc drwxr-xr-x 2 root root 1024 2002-12-23 11:13 floppy drwxr-xr-x 9 root root 4096 2003-06-04 16:32 home drwxr-xr-x 2 root root 1024 2001-12-19 19:08 initrd drwxr-xr-x 5 root root 4096 2003-06-09 16:36 lib drwx------ 3 root root 12288 2002-12-23 11:03 lost+found drwxr-xr-x 4 root root 1024 2003-05-15 14:27 mnt drwxr-xr-x 2 root root 1024 2001-12-19 19:08 opt dr-xr-xr-x 134 root root 0 2003-06-11 16:08 proc drwxr-xr-x 29 root root 2048 2003-06-10 15:28 root drwxr-xr-x 2 root root 4096 2003-06-09 16:36 sbin drwxrwxrwt 10 root root 300 2003-06-11 16:11 tmp drwxr-xr-x 16 root root 4096 2003-06-06 11:58 usr drwxr-xr-x 16 root root 4096 2003-05-19 14:28 var lrwxrwxrwx 1 root root 19 2002-12-23 11:14 vmlinuz -> boot/vmlinuz-2.4.20
Με την προσθήκη της επιλογής -t, η ταξινόμηση γίνεται τώρα χρονικά:
feanor@silmaril:/$ ls -lt total 56 drwxr-xr-x 111 root root 6144 2003-06-11 16:37 etc drwxrwxrwt 10 root root 300 2003-06-11 16:11 tmp dr-xr-xr-x 134 root root 0 2003-06-11 16:08 proc drwxr-xr-x 29 root root 2048 2003-06-10 15:28 root drwxr-xr-x 5 root root 4096 2003-06-09 16:36 lib drwxr-xr-x 2 root root 2048 2003-06-09 16:36 bin drwxr-xr-x 2 root root 4096 2003-06-09 16:36 sbin drwxr-xr-x 16 root root 4096 2003-06-06 11:58 usr drwxr-xr-x 9 root root 4096 2003-06-04 16:32 home drwxr-xr-x 2 root root 1024 2003-05-23 09:29 boot drwxr-xr-x 16 root root 4096 2003-05-19 14:28 var drwxr-xr-x 4 root root 1024 2003-05-15 14:27 mnt lrwxrwxrwx 1 root root 19 2002-12-23 11:14 vmlinuz -> boot/vmlinuz-2.4.20 drwxr-xr-x 2 root root 1024 2002-12-23 11:13 cdrom drwxr-xr-x 2 root root 1024 2002-12-23 11:13 floppy drwx------ 3 root root 12288 2002-12-23 11:03 lost+found drwxr-xr-x 2 root root 1024 2001-12-19 19:08 initrd drwxr-xr-x 2 root root 1024 2001-12-19 19:08 opt drwxr-xr-x 1 root root 0 2002-12-23 02:00 dev
Είδαμε ότι εκτελέσαμε τρεις φορές την ίδια εντολή αλλά με τρεις διαφορετικές επιλογές και είχαμε τρια διαφορετικά αποτελέσματα. Η παραμετροποίηση των εντολών μας γλυτώνει περιττό κόπο και διπλασιασμό των προγραμμάτων. Αν δεν ήταν δυνατή η παραμετροποίηση της ls, θα χρειαζόμασταν τρία διαφορετικά προγράμματα, των οποίων όμως οι διαφορές θα ήταν ελάχιστες.
Η εισαγωγή επιλογών στην γραμμή εντολών γίνεται πάντοτε μετά την εντολή και με δύο διαφορετικές μορφές, αναλόγως την εντολή: μία σύντομη μορφή (που αναγνωρίζεται με τη μονή παύλα “-”) και μια αναλυτική (με δύο παύλες “--”). Οι περισσότερες εντολές δέχονται και τις δύο μορφές αλλά δεν είναι πάντα βέβαιο ότι για κάθε αναλυτική μορφή θα υπάρχει και μια σύντομη ή αντίστροφα. Για παράδειγμα, στην εντολή ls, η επιλογή -l δεν έχει αναλυτική μορφή, ενώ η -s έχει (--size).
Οι περισσότερες εντολές παρέχουν μια επιλογή βοηθείας, σχεδόν σίγουρα σε αναλυτική μορφή (--help) αλλά συχνά και σε σύντομη μορφή (-h). Με την επιλογή βοηθείας, εμφανίζονται αναλυτικές οδηγίες όσον αφορά τη σύνταξη της εντολής και των επιλογών της. Έτσι, για την ls ισχύει:
$ ls --help
Active forum topics
- Wake up from suspend mode failed
- Οργάνωση στις μεταφράσεις των ελληνικών στο Debian.
- απορια σχετικα με nvidia440
- πρόβλημα εγκατάστασης nvidia driver GTS250.
- kernel 2.6.38 για squeeze
- Gnome3
- 2 μήνες σπασμένο το upgrade σε unstable [SOLVED]
- Οι χρήστες του Internet Explorer είναι χαζοί;
- Debian Lenny + Nvidia drivers
- εγκατασταση usb cosmote
New forum topics
Νέοι χρήστες
- kountp
- Adonthegreat
- giorgos_m
- prodromos
- airmaik
Οι πιο πρόσφατες καταχωρίσεις blog.
- Fosscomm 2012
- armhf officially into Debian!
- back from UDS/Linaro Connect...
- FTF is over, Linaro Interview
- straight from FTF 2011, San Antonio...
- Όσο μεγαλώνεις μαθαίνεις...
- Emdebian 2011 Sprint report, Genesi Europe store goes online...
- Θεσσαλονίκη - open source ERP workshop
- Χρήσιμο URL για Flash Cards και Linux filesystems
- Cambridge, UK, ARM HQ for Emdebian 2011 Sprint