Dimensione: 12615
Commento:
|
Dimensione: 12607
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 12: | Linea 12: |
Cerchiamo di capire come funziona la shell prendendo ad esempio un utente che durante l'installazione, fra le varie cose ha impostato:[[BR]] ''nome utente:'' '''pippo'''[[BR]] ''nome computer:'' '''pippo-desktop'''[[BR]] Questo utente all'interno della directory {{{home}}} avrà un'altra directory con il suo stesso nome, cioè {{{pippo}}} (percorso: {{{/home/pippo}}}). Ci può accedere dal menù ''{{{Risorse -> Cartella Home}}}''. Questa cartella nota anche come '''home-utente''' riveste una grande importanza all'interno del sistema dato che al suo interno sotto forma di file nascosti (file con un punto davanti al nome) sono memorizzate le configurazioni impostate dall'utente.[[BR]] | Cerchiamo di capire come funziona la shell prendendo ad esempio un utente che durante l'installazione, fra le varie cose ha impostato:[[BR]] ''nome utente:'' '''mario'''[[BR]] ''nome computer:'' '''mario-desktop'''[[BR]] Questo utente all'interno della directory {{{home}}} avrà un'altra directory con il suo stesso nome, cioè {{{mario}}} (percorso: {{{/home/mario}}}). Ci può accedere dal menù ''{{{Risorse -> Cartella Home}}}''. Questa cartella nota anche come '''home-utente''' riveste una grande importanza all'interno del sistema dato che al suo interno sotto forma di file nascosti (file con un punto davanti al nome) sono memorizzate le configurazioni impostate dall'utente.[[BR]] |
Linea 20: | Linea 20: |
Aprendo un terminale (''{{{Applicazioni -> Accessori -> Terminale}}}'') quello che vedrà il nostro utente '''pippo''', sarà questo:[[BR]] || {{{pippo@pippo-desktop:~$}}} || |
Aprendo un terminale (''{{{Applicazioni -> Accessori -> Terminale}}}'') quello che vedrà il nostro utente '''mario''', sarà questo:[[BR]] || {{{mario@mario-desktop:~$}}} || |
Linea 25: | Linea 25: |
Questo messaggio ci dice che l'utente '''pippo''', all'interno del computer '''pippo-desktop''', si trova attualmente nella sua '''home-utente''', cioè {{{pippo}}}, cioè '''~'''.[[BR]] Il simbolo $ rappresenta la modalità "utente". Esiste anche una modalità "amministratore" (comando: {{{sudo su}}}) caratterizzata dal simbolo #, che però in Ubuntu capita di vedere di rado. Si veda a tal proposito la pagina [http://wiki.ubuntu-it.org/Sudo Sudo]. | Questo messaggio ci dice che l'utente '''mario''', all'interno del computer '''mario-desktop''', si trova attualmente nella sua '''home-utente''', cioè {{{mario}}}, cioè '''~'''.[[BR]] Il simbolo $ rappresenta la modalità "utente". Esiste anche una modalità "amministratore" (comando: {{{sudo su}}}) caratterizzata dal simbolo #, che però in Ubuntu capita di vedere di rado. Si veda a tal proposito la pagina [http://wiki.ubuntu-it.org/Sudo Sudo]. |
Linea 27: | Linea 27: |
Per avere la conferma di essere nella cartella {{{pippo}}}, il nostro nuovo utente può dare il comando '''pwd''', che serve a visualizzare il percorso attuale in cui si trova la shell. Quindi digitandolo "pwd"[[BR]] || {{{pippo@pippo-desktop:~$ pwd}}} || |
Per avere la conferma di essere nella cartella {{{mario}}}, il nostro nuovo utente può dare il comando '''pwd''', che serve a visualizzare il percorso attuale in cui si trova la shell. Quindi digitandolo "pwd"[[BR]] || {{{mario@mario-desktop:~$ pwd}}} || |
Linea 34: | Linea 34: |
/home/pippo | /home/mario |
Linea 36: | Linea 36: |
Se invece darà il comando '''ls''', otterrà la lista dei file presenti nella cartella {{{pippo}}}.[[BR]] (Con l'opzione {{{ls -a}}} saranno elencati anche i file nascosti). | Se invece darà il comando '''ls''', otterrà la lista dei file presenti nella cartella {{{mario}}}.[[BR]] (Con l'opzione {{{ls -a}}} saranno elencati anche i file nascosti). |
Linea 39: | Linea 39: |
|| {{{pippo@pippo-desktop:~$ cd /usr/share/doc}}} || |
{{{ mario@mario-desktop:~$ cd /usr/share/doc }}} |
Linea 43: | Linea 44: |
|| {{{pippo@pippo-desktop:/usr/share/doc$}}} || |
{{{ mario@mario-desktop:/usr/share/doc$ }}} |
Linea 48: | Linea 50: |
Abbiamo quindi capito che con la shell ci possiamo spostare “a spasso” per il file system e al suo interno sarà possibile eseguire i comandi di cui abbiamo bisogno.[[BR]] Sulla guida ComandiBase potrete familiarizzare con i comandi basilari. Questa guida procede ora con alcuni esempi pratici e relativi suggerimenti sull'uso della shell. Più che altro si vuole mettere in guardia l'utente da possibili errori. Per fare questo continuiamo ad avvalerci della preziosa collaborazione dell'utente "pippo" e del suo file system. | Abbiamo quindi capito che con la shell ci possiamo spostare “a spasso” per il file system e al suo interno sarà possibile eseguire i comandi di cui abbiamo bisogno.[[BR]] Sulla guida ComandiBase potrete familiarizzare con i comandi basilari. Questa guida procede ora con alcuni esempi pratici e relativi suggerimenti sull'uso della shell. Più che altro si vuole mettere in guardia l'utente da possibili errori. Per fare questo continuiamo ad avvalerci della preziosa collaborazione dell'utente "mario" e del suo file system. |
Linea 52: | Linea 54: |
Per evitare di digitare ogni singola lettera scrivendo per es. `/home/pippo/Desktop`, si può usare il tasto [TAB] quello con le due frecce alla sinistra del tasto “Q”.[[BR]] Digitando `/h` e cliccando sul tasto [TAB], la stringa si auto completa in `/home/`. Ripetendo aggiungendo la "p": `/home/p` + [TAB] = `/home/pippo/` e così via fino ad ottenere `/home/pippo/Desktop`.[[BR]] |
Per evitare di digitare ogni singola lettera scrivendo per es. `/home/mario/Desktop`, si può usare il tasto [TAB] quello con le due frecce alla sinistra del tasto “Q”.[[BR]] Digitando `/h` e cliccando sul tasto [TAB], la stringa si auto completa in `/home/`. Ripetendo aggiungendo la "p": `/home/p` + [TAB] = `/home/mario/` e così via fino ad ottenere `/home/mario/Desktop`.[[BR]] |
Linea 57: | Linea 59: |
Per agire sui file (creare, rimuovere, spostare, copiare, ecc.) occorre indicare il percorso delle directory, oppure spostarsi all'interno della directory in cui si trova il file interessato. Per esempio supponiamo con il comando '''rm''' di voler rimuovere il file {{{canzone.ogg}}} che si trova in {{{/home/pippo/Desktop}}}. Si può dare subito il comando con il percorso:[[BR]] | Per agire sui file (creare, rimuovere, spostare, copiare, ecc.) occorre indicare il percorso delle directory, oppure spostarsi all'interno della directory in cui si trova il file interessato. Per esempio supponiamo con il comando '''rm''' di voler rimuovere il file {{{canzone.ogg}}} che si trova in {{{/home/mario/Desktop}}}. Si può dare subito il comando con il percorso:[[BR]] |
Linea 60: | Linea 62: |
rm /home/pippo/Desktop/canzone.ogg | rm /home/mario/Desktop/canzone.ogg |
Linea 65: | Linea 67: |
cd /home/pippo/Desktop | cd /home/mario/Desktop |
Linea 78: | Linea 80: |
È importante rispettare gli spazi nelle linee di comando.[[BR]] Nel caso precedente, usando {{{rm /home/pippo/Desktop/canzone.ogg}}} è stata rispettata questa forma:[[BR]] | È importante rispettare gli spazi nelle linee di comando.[[BR]] Nel caso precedente, usando {{{rm /home/mario/Desktop/canzone.ogg}}} è stata rispettata questa forma:[[BR]] |
Linea 82: | Linea 84: |
Ci vorrà più attenzione se aumentano gli input.[[BR]] Per esempio supponiamo di avere il file {{{canzone.ogg}}} nel ''Desktop'' (percorso: {{{/home/pippo/Desktop/canzone.ogg}}}) e di volerne creare una copia con il nome {{{song.ogg}}} in una cartella del ''Desktop'' chiamata {{{archivio_musica}}} (percorso: {{{/home/pippo/Desktop/archivio_musica/song.ogg}}}). Usando il comando '''cp''' si ha:[[BR]] | Ci vorrà più attenzione se aumentano gli input.[[BR]] Per esempio supponiamo di avere il file {{{canzone.ogg}}} nel ''Desktop'' (percorso: {{{/home/mario/Desktop/canzone.ogg}}}) e di volerne creare una copia con il nome {{{song.ogg}}} in una cartella del ''Desktop'' chiamata {{{archivio_musica}}} (percorso: {{{/home/mario/Desktop/archivio_musica/song.ogg}}}). Usando il comando '''cp''' si ha:[[BR]] |
Linea 85: | Linea 87: |
cp /home/pippo/Desktop/canzone.ogg /home/pippo/Desktop/archivio_musica/song.ogg | cp /home/mario/Desktop/canzone.ogg /home/mario/Desktop/archivio_musica/song.ogg |
Linea 120: | Linea 122: |
In caso di errori la shell ci avvertirà con dei messaggi. Al contrario, quando il comando è andato a buon fine, non avremo nessuna segnalazione.[[BR]] Torniamo all'utente '''pippo''' che vuole creare la cartella {{{musica}}} sul ''Desktop'' con il comando '''mkdir'''.[[BR]] || {{{pippo@pippo-desktop:~$ mkdir /home/pippo/Desktop/musica}}} || |
In caso di errori la shell ci avvertirà con dei messaggi. Al contrario, quando il comando è andato a buon fine, non avremo nessuna segnalazione.[[BR]] Torniamo all'utente '''mario''' che vuole creare la cartella {{{musica}}} sul ''Desktop'' con il comando '''mkdir'''.[[BR]] || {{{mario@mario-desktop:~$ mkdir /home/mario/Desktop/musica}}} || |
Linea 125: | Linea 127: |
|| {{{pippo@pippo-desktop:~$}}} || | || {{{mario@mario-desktop:~$}}} || |
Linea 128: | Linea 130: |
A volte questo può spiazzare un utente alle prime armi che magari si aspetterebbe un segnale di conferma dell'avvenuta creazione della directory `musica`. Andando a controllare sul ''Desktop'', '''pippo''' trovera la sua nuova cartella. | A volte questo può spiazzare un utente alle prime armi che magari si aspetterebbe un segnale di conferma dell'avvenuta creazione della directory `musica`. Andando a controllare sul ''Desktop'', '''mario''' trovera la sua nuova cartella. |
Indice:BRTableOfContents |
A cosa serve la shell
Le definizioni shell, terminale e linea di comando, indicano tutte e tre un dispositivo ad interfaccia testuale che può servire a svolgere gran parte delle mansioni in un sistema operativo. Muoversi attraverso il file system per creare/cancellare/rinominare file, scaricare/installare/disinstallare programmi, settare l'hardware, creare script e molte altre cose.BR Tante delle azioni sopra elencate, come noto alla maggior parte degli utenti, possono essere svolte tramite programmi ad interfaccia grafica. La shell può essere utile qualora sussistano dei malfunzionamenti di tali programmi, oppure non esistano programmi ad interfaccia grafica per certe mansioni o semplicemente perché l'utente ritiene comodo usarla.BR
Immagine(Icone/Piccole/warning.png,,left) Attenzione, il seguente tutorial non è una guida dettagliata sull'uso dei comandi. Vuole solo introdurre utenti alle prime armi alla linea di comando e ad alcuni aspetti del file system. Per approfondire l'uso dei singoli comandi si rimanda alla pagina ComandiBase e alle singole pagine presenti nel Wiki di Ubuntu.
Come funziona la shell
HOME-UTENTE
Cerchiamo di capire come funziona la shell prendendo ad esempio un utente che durante l'installazione, fra le varie cose ha impostato:BR nome utente: marioBR nome computer: mario-desktopBR Questo utente all'interno della directory home avrà un'altra directory con il suo stesso nome, cioè mario (percorso: /home/mario). Ci può accedere dal menù Risorse -> Cartella Home. Questa cartella nota anche come home-utente riveste una grande importanza all'interno del sistema dato che al suo interno sotto forma di file nascosti (file con un punto davanti al nome) sono memorizzate le configurazioni impostate dall'utente.BR
Immagine(Icone/Piccole/note.png,,left)Per visualizzare file nascosti, selezionare dal menù Visualizza -> Mostra file nascosti.BR Per esempio, nella directory .mozilla sono memorizzati i dati riguardanti Firefox: segnalibri, estensioni, impostazioni menù, ecc.; chi ha installato Thunderbird avrà archiviati in .mozilla-thunderbird i messaggi e-mail, indirizzi di posta ecc.; e così via per qualsiasi programma installato.BR BR Per avere un quadro completo del file system, potete accedervi dai menù Risorse -> Computer, cliccando sull'icona File system o selezionando File system dalla barra laterale di sinistra.
Nella shell la home-utente viene generalmente indicata con questo simbolo ~ chiamato “tilde”. Per ottenerlo occorre digitare i tasti [AltGr]+[ì].
LA SHELL
Aprendo un terminale (Applicazioni -> Accessori -> Terminale) quello che vedrà il nostro utente mario, sarà questo:BR
mario@mario-desktop:~$ |
Questo messaggio ci dice che l'utente mario, all'interno del computer mario-desktop, si trova attualmente nella sua home-utente, cioè mario, cioè ~.BR Il simbolo $ rappresenta la modalità "utente". Esiste anche una modalità "amministratore" (comando: sudo su) caratterizzata dal simbolo #, che però in Ubuntu capita di vedere di rado. Si veda a tal proposito la pagina [http://wiki.ubuntu-it.org/Sudo Sudo].
Per avere la conferma di essere nella cartella mario, il nostro nuovo utente può dare il comando pwd, che serve a visualizzare il percorso attuale in cui si trova la shell. Quindi digitandolo "pwd"BR
mario@mario-desktop:~$ pwd |
e dando l'invio (ovviamente va sempre dato l'invio per far partire un comando) otterrà:BR
/home/mario
Se invece darà il comando ls, otterrà la lista dei file presenti nella cartella mario.BR (Con l'opzione ls -a saranno elencati anche i file nascosti).
Il nostro utente può muoversi attraverso il file system con la shell usando il comando cd. Supponiamo voglia spostarsi nella cartella doc (percorso: /usr/share/doc). Dovrà dare il comando cd /usr/share/doc:BR
mario@mario-desktop:~$ cd /usr/share/doc
ed otterràBR
mario@mario-desktop:/usr/share/doc$
Si noti che ora alla sinistra del simbolo $, ci viene indicata la nostra nuova posizione nella cartella doc.
Abbiamo quindi capito che con la shell ci possiamo spostare “a spasso” per il file system e al suo interno sarà possibile eseguire i comandi di cui abbiamo bisogno.BR Sulla guida ComandiBase potrete familiarizzare con i comandi basilari. Questa guida procede ora con alcuni esempi pratici e relativi suggerimenti sull'uso della shell. Più che altro si vuole mettere in guardia l'utente da possibili errori. Per fare questo continuiamo ad avvalerci della preziosa collaborazione dell'utente "mario" e del suo file system.
Esempi & Suggerimenti
AUTO COMPLETAMENTO
Per evitare di digitare ogni singola lettera scrivendo per es. /home/mario/Desktop, si può usare il tasto [TAB] quello con le due frecce alla sinistra del tasto “Q”.BR Digitando /h e cliccando sul tasto [TAB], la stringa si auto completa in /home/. Ripetendo aggiungendo la "p": /home/p + [TAB] = /home/mario/ e così via fino ad ottenere /home/mario/Desktop.BR Il completamento potrebbe non funzionare nel caso di directory/file/comandi con la prima parte del nome coincidente. Occorrerà quindi aggiungere le lettere finché il tasto [TAB] sarà in grado di completare il nome.BRBR Immagine(Icone/Piccole/warning.png,,left) Attenzione, nella shell le lettere minuscole sono "diverse" dalle lettere maiuscole. Vale per tutto; comandi, file, directory. La digitazione deve necessariamente rispettare le lettere maiuscole e minuscole.
PERCORSI
Per agire sui file (creare, rimuovere, spostare, copiare, ecc.) occorre indicare il percorso delle directory, oppure spostarsi all'interno della directory in cui si trova il file interessato. Per esempio supponiamo con il comando rm di voler rimuovere il file canzone.ogg che si trova in /home/mario/Desktop. Si può dare subito il comando con il percorso:BR
rm /home/mario/Desktop/canzone.ogg
oppure prima ci possiamo spostare nella directory Desktop:BR
cd /home/mario/Desktop
e poi dare il comando:BR
rm canzone.ogg
-COMANDO SENZA PERCORSO: Dalla shell certi comandi si possono lanciare indipendentemente dalla directory in cui ci troviamo. Un esempio puo essere l'installazione di programmi tramite [:AptGetHowTo:apt-get]:BR
sudo apt-get install nome_programma
SPAZI
È importante rispettare gli spazi nelle linee di comando.BR Nel caso precedente, usando rm /home/mario/Desktop/canzone.ogg è stata rispettata questa forma:BR
comando [spazio] percorso_file |
Ci vorrà più attenzione se aumentano gli input.BR Per esempio supponiamo di avere il file canzone.ogg nel Desktop (percorso: /home/mario/Desktop/canzone.ogg) e di volerne creare una copia con il nome song.ogg in una cartella del Desktop chiamata archivio_musica (percorso: /home/mario/Desktop/archivio_musica/song.ogg). Usando il comando cp si ha:BR
cp /home/mario/Desktop/canzone.ogg /home/mario/Desktop/archivio_musica/song.ogg
È stata rispettata la forma:
comando [spazio] percorso_file [spazio] percorso_file_copiato_con_nuovo_nome |
Se non si rispettano gli spazi il comando non va a buon fine!
NOMINARE FILE & DIRECTORY
É consigliabile nominare file e cartelle evitando spazi all'interno del nome.BR La shell può avere problemi a riconoscere una directory con il nome: cartella miei documentiBR Il comando cd cartella miei documenti non viene riconosciuto. Verrebbe riconosciuto se riformulato con questa formattazione: cd cartella\ miei\ documenti/ (ottenibile anche usando il tasto [TAB]).BR Quindi conviene dare dei nomi del tipo cartella_miei_documenti o cartella-miei-documenti.BR BR È bene usare con parsimonia il punto “.”BR Essendo usato per contraddistinguere un formato tipo foto.jpg, canzone.ogg, ecc., evitando di usarlo si possono evitare possibili equivoci.BR Il punto anteposto al nome, come già visto, viene usato per indicare un file nascosto (per esempio .file_nascosto).
IMMISSIONE PASSWORD
La password viene richiesta quando dobbiamo agire con i privilegi dell'amministratore. In questo modo si ha la possibilità di accedere a directory non accessibili al singolo utente e modificare eventuali file di sistema.BR Supponiamo di voler modificare con l'editor di testo gedit il file sources.list appartenente alla directory apt (percorso: /etc/apt/sources.list). Per farlo occorre usare il comando sudo che viene sempre anteposto a tutti gli altri comandi.BR
sudo gedit /etc/apt/sources.list
dopo l'invio verrà richiesta la password,BR
Password:
Quando verrà immessa la password, per motivi di sicurezza, non appariranno i caratteristici asterischi (****), bensì il campo rimarrà vuoto. Non preoccupatevi, digitate la password e date l'invio.BR Per alcuni minuti la password rimane attiva, quindi se bisogna riusare sudo, non ci sarà bisogno di ridigitarla. Se vogliamo interrompere il suo effetto basterà digitareBR
sudo -k
ERRORI
In caso di errori la shell ci avvertirà con dei messaggi. Al contrario, quando il comando è andato a buon fine, non avremo nessuna segnalazione.BR Torniamo all'utente mario che vuole creare la cartella musica sul Desktop con il comando mkdir.BR
mario@mario-desktop:~$ mkdir /home/mario/Desktop/musica |
dopo aver dato l'invio otterrà:BR
mario@mario-desktop:~$ |
A volte questo può spiazzare un utente alle prime armi che magari si aspetterebbe un segnale di conferma dell'avvenuta creazione della directory musica. Andando a controllare sul Desktop, mario trovera la sua nuova cartella.
Considerazioni finali
Gli esempi mostrati sono volutamente banali. Nella maggior parte dei casi le operazioni citate possono essere svolte con pochi click del mouse. Lo scopo era quello di prendere confidenza con la shell partendo da nozioni già conosciute quali: la copia/rimozione di un file, la creazione di una directory, ecc.BR BR Come avrete notato, la linea di comando è molto sfruttata all'interno delle guide. Questo per il semplice motivo che in questo modo oltre ad ottenere una guida molto sintetica, c'è il vantaggio di avere comandi che possono rimanere immutati nel tempo.BR Al contrario, descrivere passaggi in modalità grafica genera guide più lunghe. E si crea anche il rischio di avere una guida presto obsoleta, dal momento che un'interfaccia grafica è soggetta a cambiamenti all'uscita di nuove versioni.BR BR La conoscenza di alcuni concetti base può permettere anche agli utenti tecnicamente meno preparati di riuscire a destreggiarsi nel mondo dei comandi. Non occorre conoscere a memoria tutti i dettagli (se ciò avviene tanto meglio). Bastano poche nozioni per porsi davanti ad un'eventuale guida comprendendo dove si andrà a parare senza abbandonarsi al mero copia/incolla.
Links
[http://help.ubuntu-it.org/6.06/ubuntu/desktopguide/it/linux-basics.html Fondamenti di Linux]: Presentazione di un sistema GNU/Linux nei suoi aspetti principali.
ComandiBase: Guida sui comandi fondamentali.
[http://wiki.ubuntu-it.org/Sudo Sudo] : Guida ai comandi per ottenere il privilegio dell'amministratore di sistema.
PermessiFile: Guida sugli strumenti di modifica dei permessi sui file.
AptGetHowTo: Guida sull'installazione di programmi tramite apt-get.
InstallareProgrammiDaSorgenti: Guida alla compilazione del codice sorgente.
[http://wiki.ubuntu-it.org/CheckInstall CheckInstall]. Guida alla "pacchettizzazione".