|
From: | Roccatello Eduard |
Subject: | [Slackit.org] Traduzione capitolo 8 completata |
Date: | Fri, 2 May 2003 16:50:50 +0000 |
User-agent: | KMail/1.5 |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Ciao a tutti - -- This sign is protected by EUCD. Eduard Roccatello Pcmprover.it hi-tech portal webmaster @ http://www.pcimprover.it RoLUG staff @ http://rovigo.linux.it PGP key and more in the headers -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQE+sqHrjUY2i0dNbbARAnVAAJ9uJrQkI/eqsiV44iCckn/Ei0RafwCfQ47j 3sD3kz/Ai3b9vZz5mOlYECM= =W4jn -----END PGP SIGNATURE-----
Welcome to Linux 2.2.14
darkstar login:
Hmm.. Nessuno ti ha mai detto nulla riguardo ad un login. E cos'è darkstar? Non preoccuparti; probabilmente non hai accidentalmente creato un collegamento iperspaziale con la luna artificiale dell'Impero. (Mi dispiace ma il protocollo di collegamento iperspaziale non è ancora supportato dal kernel di Linux). No, darkstar è solo il nome di uno dei tuoi computer, e il suo nome viene mostrato di default. Se hai specificato un nome per il tuo computer durante l'installazione, dovresti vederlo al posto di darkstar.
Per fare il login... Se questa è la tua prima volta, vorrai accedere come root. Ti verrà richiesta una password; se l'hai impostata durante l'installazione, è quella che stiamo cercando. Se no, premi semplicemente invio. Ecco fatto-- Sei dentro!
$ ps > blarghSai cos'è? Sono io che eseguo ps per vedere quali processi sono in esecuzione; ps è trattato nel Capitolo 11. Quella comunque non è la parte interessante. La parte interessante è > blargh, che significa, grezzamente, "prendi l'output di ps e scrivilo in un file chiamato blargh". Ma aspetta, ora diventa ancora più forte.
$ ps | lessQuesto prende l'output di ps e lo "incanala" (pipe) attraverso less, in modo da poterlo visualizzare a mio piacimento
$ ps > > blargh
Questo è il terzo redirector più usato; esso fa le stesse cose di ">", eccetto che "> >" aggiungerà l'output di ps al file blargh, se il file esiste. Se non esiste, come con ">", esso verrà creato. (">" sovrascrive il contenuto corrente di blargh.)
C'è anche un operatore "<", che significa "prendi il tuo input dal seguente", ma non è usato così spesso.
$ fromdos < dosfile.txt > unixfile.txtLa redirezione diventa veramente divertente quando cominci a combinare le cose:
$ ps | tac > > blargh
Questo eseguirà ps, rovesciando le linee del suo output, e le aggiungerà al file blargh. Puoi aggiungere quante redirezioni che vuoi; basta fare attenzione ad interpretarle da sinistra a destra.
Vedi la man page di bash(1)
per informazioni più dettagliate sulla redirezione.
Un sistema Linux è una bestia complessa, e ci sono molte cose
da seguire, una moltitudine di piccoli dettagli che entrano in ruolo
durante le tue normali interazioni con i vari programmi (per alcuni dei
quali potresti non aver bisogno di esserne consapevole). Nessuno vuole
passare un mucchio di opzioni ad ogni programma da avviare, dicendo il
tipo di terminale da usare, l'hostname del computer, come dovrebbe
apparire il prompt...
Così come un meccanismo di copertina, gli utenti hanno quello che che viene comunemente chiamato ambiente (enviroment). L'ambiente definisce le condizioni nelle quali viene eseguito il programma, ed alcune di queste definizioni sono variabili; l'utente più alterarle e giocare con esse, come è di diritto in un sistema Linux. Molte shell hanno le variabili d'ambiente (altrimenti non sarebbero molto usabili). Diamo uno sguardo ai comandi che che bash fornisce per manipolare le sue variabili d'ambiente.
$ setset da solo vi mostrerà tutte le variabili d'ambiente attualmente definite, con i loro rispettivi valori. Come molti comandi bash integrati, esso può fare molte altre cose (con i parametri); lasceremo alla man page della bash(1) il compito di trattare questi altri argomenti. L'output tipico di set potrebbe essere il seguente:
PATH=/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:Prestate attenzione alla variabile PATH della quale abbiamo discusso prima; posso far girare qualsiasi cosa in quelle directory richiamando semplicemente il nome del file.
/usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:/usr/local/ssh1/bin:
/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin
PIPESTATUS=([0]="0")
PPID=4978
PS1='\h:\w\$ '
PS2='> '
PS4='+ '
PWD=/home/logan
QTDIR=/usr/local/lib/qt
REMOTEHOST=ninja.tdn
SHELL=/bin/bash
$ unset VARIABLEunset rimuoverà ogni variabile che gli passate, annullando sia la variabile che il suo valore; bash si dimenticherà che la variabile sia mai esistita (Non preoccupatevi. A meno che non sia una cosa definita per ogni sessione nei file di configurazione, essa riapparirà immediatamente avviando un altra sessione).
$ export VARIABLE=some_valueOra, export è veramente utile. Usandolo, darete alla variabile d'ambiente VARIABLE il valore "some_value"; se la variabile non esiste, verrà creata. Se la variabile ha già un valore verrà sostituito con il nostro valore. Questo non va bene se stai aggiugiungende una directory al tuo PATH. In questo caso vorrai usare una cosa simile a questa:
$ export PATH=$PATH:/some/new/directoryDa notare l'utilizzo di $PATH qui: quando vuoi che bash interpreti una variabile (scambiarla con il suo valore), metti un $ prima del nome della variabile. Ad esempio, echo $PATH mostrerà il contenuto di $PATH:
$ echo $PATH
/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:
/usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:/usr/local/ssh1/bin:
/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin
(Qui arriva qualcosa di molto interessante.)
Da 3 e 2, possiamo determinare 4) A nessuno piace scrivere.
Fortunatamente, bash ci salva
da 5 (a nessuno piace un'interfaccia a linea di comando).
Come fa bash a fornire questa splendida caratteristica? In aggiunta
alle espansioni dovute alle wildcard discusse prima, bash è
caratterizzata dal "Tab completition", ovvero il completamente tramite
il tasto Tab.
Tab completition lavora in questa maniera: Stai scrivendo il nome di
un file. Forse è nel tuo PATH,
forse lo stai scrivendo esplicitamente. Tutto quello che devi fare
è scrivere abbastanza nome del file per identificarlo
unicamente. Poi premi il tasto tab. bash
si immaginerà cosa vuoi scrivere e finirà di farlo per te!
E' tempo per un esempio. /usr/src contiene 2 sottidirectory: usr/src/linux e /usr/src/sendmail.
Voglio vedere cosa c'è in /usr/src/linux. Per fare ciò
scrivo ls /usr/src/l, premo il
tasto TAB, e bash mi restituisce ls /usr/src/linux.
Ora, supponiamo che ci siano due directory /usr/src/linux e
/usr/src/linux-old; Se scrivo /usr/src/l e premo TAB, bash
riempirà finche può e mi ritornerà /usr/src/linux.
Posso fermarmi qui o posso premere ancora TAB, e bash mi
mostrerà una lista di directory che assomigliano a quello che ho
appena scritto.
D'ora in poi, meno battitura (e da ora, le persone possono apprezzare le CLI). Te l'avevo detto che era interessante.
Sei nel mezzo di un lavoro e decidi che di avere bisogno di fare qualcos'altro. Puoi tranquillamente smettere di fare quello che stavi facendo e scambiare i task ma questo è un sistema multiutente, giusto? E puoi entrare simultaneamente quante volte vuoi, giusto? Allora perchè dovremmo fare le cose una alla volta?
Non devi. Non possiamo avere tastiere multiple, mouse, e monitor per
una sola macchina. Non vogliamo andare per tentativi e chiaramente
l'hardware non è la soluzione. Lasciamo che software e Linux ci
forniscano "terminali virtuali", chiamati anche "VTs".“VTs”.
Premendo Alt ed un tasto funzione, puoi scegliere i terminali
virtuali; ad ogni tasto funzione corrisponde un terminale virtuale.
Slackware prevede login su 6 terminali virtuali di default. Alt+F2 ti
porterà sul secondo terminale virtuale, Alt+F3 al terzo, ecc.
Il resto dei tasti funzione sono riservati per le sessioni di X. Ogni sessione di X usa il suo terminale virtuale cominciando dal settimo (Alt+F7) e successivi. Quando sei in X, la combinazione di tasti Alt+tasto Funzione è sostituita da Ctrl+Alt+Funzione; perciò se sei in X e vuoi tornare alla console testuale senza uscire dalla tua sessione di X, puoi usare la combinazione Ctrl+Alt+(F1-F6). (con Alt+F7, tornerai ad X, supponendo di utilizzare la prima sessione di X).
[Prev in Thread] | Current Thread | [Next in Thread] |