9 Το Περιβάλλον στο Οποίο Δουλεύετε

Ο φλοιός (shell) είναι το πιο σημαντικό μέρος του περιβάλλοντος εργασίας σας. Στο DOS ο συνηθισμένος φλοιός είναι το command.com. Ο φλοιός είναι αυτός που μεταφράζει τις εντολές που γράφετε στην γραμμή εντολών, και επικοινωνεί με το υπόλοιπο λειτουργικό σύστημα. Μπορείτε να γράψετε αρχεία δέσμης, σαν τα αρχεία δέσμης του DOS: μια σειρά από εντολές που θα τρέξουν χωρίς την δική σας παρεμβολή.

Στο FreeBSD υπάρχουν δύο προεγκατεστημένοι φλοιοί: το csh και το sh. Το csh είναι καλό για να κάνετε δουλειά στην γραμμή εντολών, αλλά για αρχεία δέσμης προτιμήστε το sh (ή το bash). Μπορείτε να βρείτε ποιο φλοιό τρέχετε γράφοντας echo $SHELL.

Ο φλοιός csh είναι αρκετά καλός, αλλά ο φλοιός tcsh μπορεί να κάνει ότι και το csh κι ακόμα περισσότερα. Υποστηρίζει, για παράδειγμα, την ανάκληση εντολών από το ιστορικό με τα βελάκια και επεξεργασία των εντολών πριν τρέξουν. Υποστηρίζει την αυτόματη συμπλήρωση των εντολών και των ονομάτων των αρχείων με χρήση του πλήκτρου TAB (το csh χρησιμοποιεί το Esc για τον ίδιο σκοπό), και υποστηρίζει την γρήγορη εναλλαγή μεταξύ δύο καταλόγων με την εντολή cd -. Είναι, επίσης, πολύ πιο εύκολο να ρυθμίσετε την προτροπή του φλοιού με το tcsh. Το tcsh έχει κι άλλα χρήσιμα χαρακτηριστικά, που θα κάνουν τη ζωή σας αρκετά πιο εύκολη.

Είναι εύκολο να εγκαταστήσετε ένα καινούριο φλοιό σε τρία βήματα:

  1. Εγκαταστήστε το φλοιό σαν port ή πακέτο, όπως θα κάνατε και για κάθε άλλο πακέτο. Χρησιμοποιήστε την εντολή rehash και την which tcsh (υποθέτοντας ότι στήνετε το tcsh) για να σιγουρευτείτε ότι εγκαταστήθηκε.

  2. Σαν root, αλλάξτε το αρχείο /etc/shells, προσθέτοντας μια γραμμή στο αρχείο με τον καινούριο φλοιό. Σε αυτή την περίπτωση απλά προσθέστε μια γραμμή που λέει /usr/local/bin/tcsh και σώστε το αρχείο. (Κάποια ports μπορεί να το κάνουν αυτόματα αυτό για σας.)

  3. Χρησιμοποιήστε την chsh εντολή για να αλλάξετε το φλοιό σας στο tcsh μόνιμα, ή γράψτε tcsh στο prompt για να αλλάξετε προσωρινά το φλοιό σας χωρίς να κάνετε login ξανά.

Σημείωση: Μπορεί να είναι επικίνδυνο να αλλάξετε το φλοιό του root σε κάτι διαφορετικό από sh ή csh σε κάπως παλιότερες εκδόσεις του FreeBSD και σε πολλές άλλες εκδόσεις του UNIX®. Μπορεί να μην έχετε ένα φλοιό που να δουλεύει όταν το σύστημα ξεκινήσει σε κατάσταση ενός χρήστη (single user mode). Η λύση είναι να χρησιμοποιείτε την εντολή su -m για να γίνετε root, που θα σας δώσει ένα tcsh φλοιό σαν root, αφού το ποιος είναι ο φλοιός είναι μέρος του περιβάλλοντος. Μπορείτε να κάνετε μόνιμη μια τέτοια αλλαγή προσθέτοντας στο .tcshrc σας μια συντόμευση

alias su su -m

Όταν το tcsh ξεκινάει, διαβάζει το αρχείο /etc/csh.cshrc και ύστερα το /etc/csh.login, όπως κάνει και το csh. Επίσης διαβάζει από τον αρχικό σας κατάλογο το αρχείο .login καθώς και το αρχείο .cshrc επίσης, εκτός κι αν υπάρχει το αρχείο .tcshrc. Αυτό μπορείτε να το φτιάξετε, αντιγράφοντας το αρχείο .cshrc στο .tcshrc.

Τώρα που εγκαταστήσατε το tcsh, μπορείτε να αλλάξετε και το prompt σας. Μπορείτε να βρείτε πιο πολλές λεπτομέρειες στην man σελίδα του tcsh, αλλά ας δούμε μια γραμμή που μπορείτε να βάλετε στο .tcshrc αρχείο σας που θα σας λέει πόσες εντολές έχετε γράψει, τι ώρα είναι, και σε ποιον κατάλογο είστε. Επίσης περιέχει ένα χαρακτήρα > αν είστε απλός χρήστης, ή ένα χαρακτήρα # αν είστε root, κάτι που έτσι κι αλλιώς το κάνει το tsch.

set prompt = "%h %t %~ %# "

Αυτό μπορεί να πάει στο ίδιο μέρος που υπάρχει η παλιά set prompt γραμμή αν υπάρχει, ή κάτω από την "if($?prompt) then" αν δεν υπάρχει. Μετατρέψτε την παλιά σε σχόλιο, ώστε να μπορείτε να επιστρέψετε στο παλιό σας prompt αν το προτιμάτε. Μην ξεχάσετε στην καινούρια γραμμή τα κενά και τα εισαγωγικά. Μπορείτε να κάνετε το tcsh να ξαναδιαβάσει το .tcshrc γράφοντας source .tcshrc.

Μπορείτε να δείτε μια λίστα με τις μεταβλητές περιβάλλοντος που υπάρχουν γράφοντας env στο prompt σας. Το αποτέλεσμα περιέχει τον προκαθορισμένο επεξεργαστή κειμένου σας, τον pager, και τον τύπο του τερματικού σας, ανάμεσα σε πολλά άλλα πράγματα. Μια χρήσιμη εντολή αν έχετε συνδεθεί από μακριά και δεν μπορείτε να τρέξετε κάποιο πρόγραμμα, επειδή ο τύπος τερματικού δεν το επιτρέπει, είναι η εντολή setenv TERM vt100.

Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να επικοινωνήσετε με την <questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην <doc@FreeBSD.org>.