## page was renamed from ComandiBase
#format wiki
#LANGUAGE it
<<BR>>
<<Indice(depth=2)>>

<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=48960")>>

= Introduzione =

Questa pagina ha come scopo la presentazione schematica dei '''comandi base''' della ''shell'' GNU/Linux.
Per tale ragione costituisce più un riferimento per l'uso corretto dei comandi che una guida introduttiva alla shell.

Tutti i comandi all'interno di questa pagina devono essere eseguiti nel [[AmministrazioneSistema/Terminale|terminale]].

 ||<tablestyle="text-align: justify;" style="border-width:0px;" 5%>''Sotto Linux ci sono le GUI (Graphical User Interfaces), dove è possibile puntare, cliccare, trascinare e svolgere il proprio lavoro senza prima aver letto una montagna di documentazione. L'ambiente di lavoro tradizionale di Unix è la CLI (Command Line Interface), dove si scrivono le istruzioni che il computer deve fare. Questo metodo è molto più veloce e potente, ma bisogna scoprire quali sono le istruzioni. [...]''||

||<tablestyle="text-align: right;" style="border-width:0px;" 5%> (Estratto da [[http://linuxmanpages.com/man1/intro.1.php|man intro]])||

{{{#!wiki important
Linux è [[https://it.wikipedia.org/wiki/Sensibile_alle_maiuscole|case sensitive]]. «User», «user», e «USER» sono tutte cose diverse.
}}}

<<Anchor(gestionefiledirectory)>>
= Gestione di file e directory =

<<Anchor(pwd)>>
== pwd ==

Il comando '''pwd''' serve per mostrare la directory in cui ci si trova.

La sintassi del comando è la seguente:
{{{
pwd [opzioni]
}}}

Opzioni utilizzabili con il comando '''pwd''':

||<tablestyle="width:100%" : 10%>'''Opzione''' ||<:> '''Risultato'''      ||
||<:> '''-L'''        || utilizza PWD dall'ambiente, anche se contiene collegamenti simbolici  ||
||<:> '''-P'''        || evita tutti i collegamenti simbolici                                  ||
||<:> '''--help'''    || visualizzare questo aiuto ed esce                                     ||
||<:> '''--version''' || fornisce informazioni sulla versione ed esce                          ||

<<Anchor(ls)>>
== ls ==

Il comando '''ls''' serve per elencare il contenuto di una directory.

La sintassi del comando è la seguente:
{{{
ls [opzione] [directory]
}}}

Alcune opzioni da utilizzare con il comando '''ls''':

||<tablestyle="width:100%" :10%>'''Opzione''' ||<:>'''Risultato''' ||
||<:>'''[directory]''' || elenca il contenuto della directory specificata, se non specificata viene considerata la directory corrente ||
||<:>'''-a'''     || elenca anche i file nascosti                                                       ||
||<:>'''-l'''     || elenco dettagliato di file e sotto directory con i loro attributi                  ||
||<:>'''-R'''     || elenca ricorsivamente i file nella directory indicata e in tutte le sottodirectory ||
||<:>'''-s'''     || mostra la dimensione dei file                                                      ||
||<:>'''-S'''     || ordina i file per dimensione partendo dal più grande                               ||
||<:>'''-u'''     || ordina i file per data e ora di accesso partendo dal più recente                   ||
||<:>'''-X'''     || ordina i file per estensione e ordine alfabetico                                   ||
||<:>'''-r'''     || elenca i file invertendone l'ordine                                                ||
||<:>'''--color'''|| mostra i file con colori differenti                                                ||

<<Anchor(cd)>>
== cd ==

Il comando '''cd''' serve per spostarsi all'interno delle directory del filesystem.

La sintassi del comando è la seguente:
{{{
cd [directory]
}}}

Alcuni esempi di uso del comando '''cd''': 

 * spostarsi alla directory superiore:{{{
cd ..
}}}
 * Spostarsi da qualsiasi punto nella propria directory '''home''':{{{
cd
}}} è equivalente a:{{{
cd ~
}}}
 * Spostarsi nella directory `/etc`:{{{
cd /etc
}}}

<<Anchor(mkdir)>>
== mkdir ==

Il comando '''mkdir''' serve per creare directory all'interno del filesystem.

La sintassi del comando è:
{{{
mkdir [opzioni] directory
}}}

Alcuni esempi di uso del comando '''mkdir''':

 * creare la directory `prova/` all'interno della directory corrente:{{{
mkdir prova
}}}
 * Creare la directory `prova` all'interno della propria home directory, qualunque sia la directory in cui ci si trova al momento:{{{
mkdir ~/prova
}}}
 * Qualora non esistessero, verranno create anche tutte le directory intermedie, a partire dalla directory corrente:{{{
mkdir -p prova1/prova2/prova3/bin
}}}

<<Anchor(cp)>>
== cp ==

Il comando '''cp''' serve per:

 * copiare un file in un altro file;
 * copiare un file in un'altra directory;
 * copiare più file in un'altra directory;
 * copiare directory.

La sintassi del comando è la seguente:
{{{
cp [opzioni] origine destinazione
}}}

Alcune opzioni da utilizzare con il comando '''cp''':

||<tablestyle="width:100%" : 10%>'''Opzione''' ||<:>'''Risultato''' ||
||<:>'''-b'''|| esegue automaticamente una copia di backup di ogni file di destinazione esistente                            ||
||<:>'''-f'''|| forza la sovrascrittura dei file, senza richiedere interventi da parte dell'utente                           ||
||<:>'''-i'''|| attiva la modalità interattiva, che chiede conferma prima dell'eventuale sovrascrittura di file preesistenti ||
||<:>'''-p'''|| mantiene, se possibile, gli attributi del file                                                               ||
||<:>'''-r'''|| permette di attivare la modalità ricorsiva, consentendo la copia di directory                                ||
||<:>'''-v'''|| attiva la modalità "verbose", visualizza ciò che il sistema ha fatto in seguito al comando                   ||

Alcuni esempi di uso del comando '''cp''':

 * copiare il file `miofile` della directory `prova` nella directory `/prova1`:{{{
cp /prova/miofile /prova1
}}}
 * Copiare il file `miofile` della directory `/prova` nella directory `/prova1` dandogli il nome `nuovofile`:{{{
cp /prova/miofile /prova1/nuovofile
}}}
 * Copiare la cartella `/prova`, e tutto il suo contenuto, nella cartella `/prova_copia`:{{{
cp -r /prova /prova_copia
}}}

{{{#!wiki tip
Se necessita di copiare più file si può modificare il comando `cp [opzioni] origine destinazione` in `cp [opzioni] * destinazione`
}}}

<<Anchor(mv)>>
== mv ==

Il comando '''mv''' serve per spostare, o rinominare, file e directory.

La sintassi del comando è la seguente:
{{{
mv [opzioni] origine destinazione
}}}

Le opzioni sono le stesse del comando '''[[#cp|cp]]'''.

Alcuni esempi di uso del comando '''mv''':

 * Cambiare il nome al file `miofile` in `nuovofile`:{{{
mv miofile nuovofile
}}}
 * Spostare il file `miofile` nella directory `/prova`, sovrascrivendo un eventuale file con lo stesso nome:{{{
mv miofile /prova
}}}
 * Cambiare il nome alla directory `/prova` in `/prova_nuova`:{{{
mv /prova /prova_nuova
}}}
 * Spostare la directory `/prova` nella directory già esistente `/prova.bak`:{{{
mv /prova /prova.bak
}}}

<<Anchor(rm)>>
== rm e rmdir ==

{{{#!wiki important
__L'eliminazione tramite rm è irreversibile__. Un uso incauto potrebbe provocare danni al sistema e/o perdite di dati. Consultare la [[AmministrazioneSistema/ComandiPericolosi|guida sui comandi pericolosi]] per maggiori informazioni.
}}}

Il comando '''rm''' serve per cancellare file o directory dal file system.

La sintassi del comando è la seguente:
{{{
rm [opzioni] file ...
}}}

Alcune opzioni da utilizzare con il comando '''rm''':

||<tablestyle="width:100%" : 10%>'''Opzione''' ||<:>'''Risultato''' ||
||<:>'''-i'''|| chiede conferma prima di cancellare                                      ||
||<:>'''-f'''|| forza la cancellazione del file senza chiedere conferma                  ||
||<:>'''-r'''|| abilita la modalità ricorsiva usata per la cancellazione delle directory ||

Il comando '''rmdir''' serve per cancellare directory dal file system.

La sintassi del comando è la seguente: {{{
rmdir directory
}}}

Alcuni esempi di uso dei comandi '''rm''' e '''rmdir''':

 * cancellare il file `miofile`:{{{
rm miofile
}}}
 * Cancellare la directory `prova/` e tutto il suo contenuto:{{{
rm -rf prova/
}}}
 * Cancellare la directory `prova/` solo se questa non contiene alcun file all'interno:{{{
rmdir prova/
}}}

<<Anchor(touch)>>
== touch ==

Il comando '''touch''' serve per aggiornare la data dell'ultimo accesso o quello dell'ultima modifica di un file.  
Se seguito da un nome di file non ancora presente, ne crea uno vuoto con l'estensione indicata.

La sintassi del comando è la seguente:
{{{
touch [opzioni] file
}}}

Alcune opzioni da utilizzare con il comando '''touch''':
||<tablestyle="width:100%":10%>'''Opzione''' ||<:>'''Risultato''' ||
||<:>'''-a'''       || cambia solo la data dell'ultimo accesso               ||
||<:>'''-c'''       || non creare il file                                    ||
||<:>'''-m'''       || cambia solo la data dell'ultima modifica              ||
||<:>'''-t STAMP''' || specifica la data nel formato «[[CC]YY]MMDDhhmm[.ss]» ||

Alcuni esempi di uso del comando:

 * digitando il comando: {{{
touch miofile
}}}
  * Se `./miofile` è un file già esistente, la data e l'ora di ultima modifica verranno impostate a quelle correnti.
  * Se il file non esiste, allora verrà creato.

 * Impostare come data e ora di ultima modifica del file `./miofile` alle ore 11.00 del 21 febbraio 2007: {{{
touch -t 0702211100 miofile
}}}

<<Anchor(ln)>>
== ln ==

Il comando '''ln''' serve a creare un collegamento (o ''link'') ad un file o una directory.

Un collegamento è un file speciale che non contiene dati, ma solo un riferimento ad un altro file: ogni operazione effettuata sul collegamento viene in realtà eseguita sul file a cui punta.

La sintassi del comando è la seguente:
{{{
ln -s /percorso_file_da_collegare/file_da_collegare /percorso_del_collegamento/nome_del_collegamento
}}}

L'opzione '''-s''' specifica che verrà creato un collegamento simbolico.

{{{#!wiki tip
L'uso di tale opzione è consigliato.
}}}

{{{#!wiki tip
Se necessita di collegare più file si può modificare il comando `ln -s /percorso_file_da_collegare/file_da_collegare /percorso_del_collegamento/nome_del_collegamento` in `ln -s /percorso_file_da_collegare/*  /percorso_del_collegamento/(nome_del_collegamento opzionale)`
}}}

<<Anchor(chmod)>>
== chmod ==

Consultare la guida ai [[AmministrazioneSistema/PermessiFile#chmod|permessi dei file]].

<<Anchor(diff)>>
== diff ==

Il comando '''diff''' serve per confrontare file originali con backup all'interno di una directory o sottodirectory.

La sintassi del comando è la seguente:
{{{
diff [opzioni] [fileoriginale] [filebackup]
}}}

Alcune opzioni da utilizzare con il comando '''diff''':

||<tablestyle="width:100%;" 10%:>'''Opzione''' ||<:> '''Risultato'''      ||
||<:> '''-q'''        || permette di ignorare la visualizzazione nell'output le differenze ||
||<:> '''-r'''        || permette di includere le sottocartelle.                                  ||

Alcuni esempi di usi del comando:

  * confrontare due file: {{{
diff /home/<nomeutente>/Documenti/LibreriaCasa.txt /home/<nomeutente>/Documenti/LibreriaUfficio.txt
}}}

  * confrontare directory: {{{
diff -r ~/Immagini /media/<nome_utente>/Dati/Immagini
}}}

Per approfondire l'uso del comando consultare la relativa [[http://manpages.ubuntu.com/manpages/focal/en/man1/diff.1posix.html|pagina man]].

<<Anchor(rename)>>
== rename ==

Il comando '''rename''' serve per rinominare più file o cartelle ricorsivamente.

[[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://rename|rename]]

La sintassi del comando è la seguente:
{{{
rename [-v] [-n] [-f] perlexpr [nomi file]

}}}

Alcune opzioni da utilizzare con il comando '''rename''':

||<tablestyle="width:100%;" 10%:>'''Opzione''' ||<:> '''Risultato'''      ||
||<:> '''-n'''        || simula la rinomina mostrandola solo sullo schermo ||
||<:> '''-v'''        || mostra i file rinominati con successo ||
||<:> '''-f'''        || forza la sovrascrittura dei file originali (da usare con prudenza) ||
||<:> '''espr. perl'''        || 's/<termine da sostituire>/<termine sostitutivo>/g' <selezione parte nome (possono essere usati i caratteri jolly `?` per selezione un carattere e `*` per selezione più caratteri)> ||

Alcuni esempi di usi del comando:

  * creare la copia di backup di file `.pdf`: {{{
rename 's/.pdf/.pdf.~/g' *.pdf
}}}

  * simulare la modifica dell'estensione di tutti i file `.jpg` in `.jpeg`: {{{
rename -n 's/.jpg/.jpeg/g' *.jpg
}}}

  * verificare la modifica dell'estensione di tutti i file `.jpg` in `.jpeg`: {{{
rename -v 's/.jpg/.jpeg/g' *.jpg
}}}

  * forzare correzione tramite rinomina di cartelle:{{{
rename -f 's/viagio*/viaggio*/g viagio*
}}}

  * intercalare una particella di testo tra il nome e l'estensione:{{{
rename -v 's/.odt/.marzo.odt/g' *.odt
}}}  

Per approfondire l'uso del comando consultare la relativa [[http://manpages.ubuntu.com/manpages/focal/en/man1/rename.html|pagina man]].


<<Anchor(ricerca)>>
= Funzioni di ricerca  e sostituzione =

<<Anchor(find)>>
== find ==

Il comando '''find''' serve per cercare all'interno di una directory e delle sue sottodirectory i file che soddisfano dei criteri stabiliti dall'utente.

La sintassi del comando è la seguente:
{{{
find [directory] [espressione]
}}}

Alcuni esempi di usi del comando:

 * cercare all'interno della directory corrente `./` tutti i file con estensione `.mp3`:{{{
find . -name '*.mp3'
}}}
 * Cercare all'interno della directory corrente tutti i file con [[AmministrazioneSistema/PermessiFile|permessi]] di lettura e scrittura per il proprietario e il gruppo, ma solo di lettura per gli altri utenti:{{{
find . -perm 664
}}}
 * Cercare ed eliminare tutti i file temporanei all'interno della directory corrente:{{{
find . -name '*.tmp' -exec rm {} \;
}}}
 * Cercare tutti i file appartenenti all'utente specificato:{{{
find /tmp -user mario
}}}

<<Anchor(locate)>>
== locate ==

Il comando '''locate''' serve per cercare file o cartelle all'interno del filesystem in modo veloce e semplice.

La sintassi del comando è la seguente:{{{
locate [opzione]  [nome cercato]
}}}

Alcuni esempi di usi del comando:

  * aggiornare il database prima della ricerca:{{{
sudo updatedb
}}}

  * cercare un file: {{{
locate <nome file>
}}}

  * cercare una directory:{{{
locate -b <nome directory>
}}}

{{{#!wiki note
A causa del bug <<Bug(ubuntu 1968190)>>, per rendere possibile il funzionamento del comando su file system [[Hardware/DispositiviPartizioni/Btrfs/Introduzione|Btrfs]], occorre aprire [[AmministrazioneSistema/PrivilegiDiAmministrazione|come amministratore]] con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/updatedb.conf` e modificare la stringa '''PRUNE_BIND_MOUNTS = “yes”''' in '''PRUNE_BIND_MOUNTS = “no”'''.
}}}

<<Anchor(grep)>>
== grep ==

Il comando '''grep''' serve per filtrare all'interno di una directory o di un file dei caratteri, termini o frasi che soddisfano i criteri stabiliti dall'utente.

La sintassi del comando è la seguente:
{{{
grep [opzioni] ["testo cercato"] [locazione completa]
}}}

Alcune opzioni da utilizzare con il comando '''grep''':

||<tablestyle="width:100%;" 10%:>'''Opzione''' ||<:> '''Risultato'''      ||
||<:> '''-r'''        || permette di cercare ricorsivamente nelle sottocartelle, può essere omesso se non necessario. ||
||<:> '''-i'''        || permette di ignorare la distinzione tra maiuscole e minuscole.                                  ||
||<:> '''-n'''    || mostra la riga del file in cui è contenuto il testo cercato.                                     ||
||<:> '''-o'''    || mostra solo la parte della riga corrispondente al testo cercato.                                     ||

Alcuni esempi di usi del comando:

  * cercare un file: {{{
grep -ri "preventivo carrozziere" /home/<nomeutente>/*
}}}

  * cercare un termine in un file: {{{
grep -rin "alignment horizontal" /usr/share/locale/*/LC_MESSAGES/
}}}

Per approfondire l'uso del comando consultare la relativa [[http://manpages.ubuntu.com/manpages/focal/man1/grep.1.html|pagina man]].

<<Anchor(sed)>>
== sed ==

Il comando '''sed''' serve per sostituire all'interno di uno o più file dei caratteri, termini o frasi che soddisfano i criteri stabiliti dall'utente.

La sintassi del comando è la seguente:
{{{
sed [opzioni]... ["testo cercato|testo sostitutivo"] [locazione completa]
}}}

Alcune opzioni da utilizzare con il comando '''sed''':

||<tablestyle="width:100%;" 10%:>'''Opzione''' ||<:> '''Risultato'''      ||
||<:> '''-i'''        || in-place salva la modifica sul file di origine.  ||
||<:> '''s'''         || tentativo di far corrispondere l'espressione regolare allo spazio del modello   ||
||<:> '''g'''         || copia/aggiunge spazio di attesa allo spazio del pattern. ||

Alcuni esempi di usi del comando:

  * modificare un termine nel file `buridda.txt`: {{{
sed -i 's/1 cipolla/2 cipolle/g' /home/<nomeutente>/Ricette/buridda.txt
}}}

  * correggere un termine errato in tutti i file `.txt` contenuti in una directory:{{{
sed -i 's|rooso|rosso|g'  /home/<nomeutente>/Documenti/Piastrelle/*.txt
}}}

Per approfondire l'uso del comando consultare la relativa [[http://manpages.ubuntu.com/manpages/focal/man1/sed.1.html|pagina man]].

<<Anchor(filecompressi)>>
= Gestione dei file compressi =

Consultare la guida ai [[AmministrazioneSistema/FormatiDiCompressione|formati di compressione]].

<<Anchor(filesystem)>>
= Gestione del filesystem =

<<Anchor(mount)>>
== mount ==

Il comando '''mount''' serve per effettuare il ''montaggio'' di un filesystem all'interno della gerarchia di file del sistema, rendendo accessibile un filesystem a partire da una specifica directory chiamata '''punto di mount''' (o di montaggio).

Alcuni esempi di uso del comando '''mount''':

 * visualizzare i dispositivi attualmente montati, il loro punto di montaggio e il tipo di filesystem utilizzato per gestirne i dati{{{
mount
}}}
 * Montare in `/media/cdrom` il dispositivo CD-Rom:{{{
mount /media/cdrom
}}}
 * Montare la partizione identificata come `/dev/sda1` all'interno della directory `/media/dati_windows`, in modo che tutti i dati presenti in questa partizione diventino accessibili a partire dalla directory scelta:{{{
mount -t ntfs /dev/sda1 /media/dati_windows
}}}

<<Anchor(umount)>>
== umount ==

Il comando '''umount''' serve per ''smontare'' un dispositivo precedentemente montato.

La sintassi del comando '''umount''' è la seguente:
{{{
umount [dispositivo]
}}}

Alcuni esempi di uso del comando '''umount''':

 * Smontare il dispositivo CD-ROM:{{{
umount /media/cdrom
}}}

<<Anchor(sysinfo)>>
= Ottenere informazioni sul sistema =

<<Anchor(du)>>
== du ==

Il comando '''du''' visualizza lo spazio occupato sul disco da file o directory.

La sintassi è la seguente:
{{{
du [opzioni] [file...]
}}}

Alcune opzioni da utilizzare con il comando '''du''':
||<tablestyle="width:100%" :10%>'''Opzione''' ||<:>'''Risultato''' ||
||<:>'''-a'''|| visualizza le informazioni sia sui file che sulle directory      ||
||<:>'''-h'''|| visualizza le dimensioni in formato leggibile umano                      ||
||<:>'''-k'''|| visualizza le dimensioni in unità di 1 k     ||
||<:>'''-m'''|| visualizza le dimensioni in unità di 1 M     ||
||<:>'''-P'''|| non visualizza nessun collegamento simbolico    ||
||<:>'''-s'''|| visualizza la dimensione totale complessiva                      ||
||<:>'''-x'''|| esclude le sottodirectory che siano parte di un altro filesystem ||

Alcuni esempi di uso del comando '''du''':

 * visualizzare la quantità di spazio occupata da `miofile`:{{{
du miofile
}}}
 * Visualizza la quantità di spazio complessiva occupata dalla propria directory '''home''':{{{
du -s ~
}}}
 * Visualizza la quantità di spazio complessiva occupata dall'intero sistema '''/''' in blocchi di 1k:{{{
sudo du -kshP /
}}}
 {{{#!wiki note
Questo comando necessita dei [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]].
}}}

<<Anchor(df)>>
== df ==

Il comando '''df''' visualizza a schermo lo spazio rimasto sulle partizioni e sui dischi del proprio sistema.

La sintassi del comando è la seguente:
{{{
df [opzioni] [file...]
}}}

Alcune opzioni da utilizzare con il comando '''df''':
||<tablestyle="width:100%" :10%>'''Opzione''' ||<:>'''Risultato'''||
||<:>'''-a'''|| include nell’elenco anche i filesystem con una dimensione di 0 blocchi, che sono di natura omessi. Normalmente questi filesystem sono pseudo-filesystem con scopi particolari, come le voci per l’ ''automounter''. Filesystem di tipo «ignore» o «auto», supportati da alcuni sistemi operativi, sono inclusi solo se quest’opzione è specificata ||
||<:>'''-h'''|| aggiunge a ciascuna dimensione un suffisso, come «M» per megabyte, «G» per gigabyte, ecc ||
||<:>'''-H'''|| ha lo stesso effetto di '''-h''', ma usa le unità  ufficiali  SI  (con potenze di 1000 piuttosto che di 1024, per cui M sta per 1000000 invece di 1048576) ||
||<:>'''-t''' tipofs || limita l’elenco a filesystem del tipo specificato ||
||<:>'''-x''' tipofs || limita l’elenco a filesystem ''non'' del tipo specificato ||

Un esempio di uso del comando '''df''':

 * mostrare lo spazio occupato solo dai dischi con filesystem '''ext3''', utilizzando il suffisso specifico per l'unità di misura:{{{
df -Ht etx3
}}}

<<Anchor(free)>>
== free ==

Il comando '''free''' mostra informazioni sulla memoria di sistema. Molto utile se si vuole rendersi conto della memoria disponibile sul sistema, della memoria attualmente in uso e di quella libera.

La sintassi del comando è la seguente:
{{{
free [opzioni]
}}}

Alcune opzioni da utilizzare con il comando '''free''':
||<tablestyle="width:100%" :10%>'''Opzione''' ||<:>'''Risultato''' ||
||<:>'''-b'''|| mostra la quantità di memoria in byte                       ||
||<:>'''-k'''|| mostra la quantità di memoria in KiB (impostato di default) ||
||<:>'''-t'''|| mostra una riga contente i totali                           ||

== top ==

Il comando '''top''' visualizza informazioni riguardanti i  processi in esecuzione e risorse di sistema, il numero di task in esecuzione, utilizzo di CPU, memoria RAM e swap utilizzate. Per informazioni sul suo utilizzo consultare la relativa [[AmministrazioneSistema/ComandiBase/Top|guida]].

<<Anchor(uname)>>
== uname ==

Il comando '''uname''' mostra informazioni sul sistema.

La sintassi è la seguente:
{{{
uname [opzione]
}}}

Alcune opzioni da utilizzare con il comando '''uname''':
||<tablestyle="width:100%" :10%>'''Opzione''' ||<:>'''Risultato''' ||
||<:>'''-a'''|| visualizzerà tutte le informazioni del sistema      ||
||<:>'''-m'''|| mostra il tipo di macchina                          ||
||<:>'''-n'''|| mostra il nome host del nodo di rete della macchina ||
||<:>'''-s'''|| mostra il nome del kernel                           ||
||<:>'''-r'''|| mostra la release del kernel                        ||
||<:>'''-o'''|| mostra il nome del sistema operativo                ||

<<Anchor(lsb_release)>>
== lsb_release ==

Il comando '''lsb_release''' mostra informazioni sulla distribuzione installata.

La sintassi è la seguente:
{{{
lsb_release [opzione]
}}}

Alcune opzioni da utilizzare con il comando '''lsb_release''':
||<tablestyle="width:100%" :10%>'''Opzione''' ||<:>'''Risultato''' ||
||<:>'''-d'''|| mostra la descrizione della distribuzione        ||
||<:>'''-c'''|| mostra il nome in codice della distribuzione     ||
||<:>'''-r'''|| mostra il numero di rilascio della distribuzione ||
||<:>'''-a'''|| mostra tutte le informazioni sulla distribuzione ||


<<Anchor(lshw)>>
== lshw ==

Il comando '''lshw''' mostra informazioni sulla composizione hardware del computer. Per maggiori informazioni consultare [[Hardware/Periferiche/IdentificarePeriferiche#lshw|questa pagina]].

<<Anchor(amministrazioneutenti)>>
= Amministrazione degli utenti e gruppi =

<<Anchor(adduser)>>
== adduser ==

Il comando '''adduser''' consente di aggiungere nuovi utenti al sistema.

 * Creare un '''nuovoutente''' digitare: {{{
sudo adduser nuovoutente
}}}Sostituire '''nuovoutente''' col nome dell'utente scelto.<<BR>>
 * Inserire l'utente in uno specifico '''gruppo''' esistente digitare: {{{
sudo adduser nomeutente nomegruppo
}}}sostituire '''nomeutente''' col nome dell'utente desiderato e '''nomegruppo''' col nome del gruppo desiderato.<<BR>>

<<Anchor(deluser)>>
== deluser ==

Il comando '''deluser''' consente di rimuovere gli utenti dal sistema.

 * Rimuovere l'utente '''nomeutente''' digitare: {{{
sudo deluser nomeutente
}}}Sostituire '''nomeutente''' col nome dell'utente scelto.<<BR>>
 * Rimuovere l'utente da uno specifico '''gruppo''' digitare: {{{
sudo deluser nomeutente nomegruppo
}}}Sostituire '''nomeutente''' col nome dell'utente desiderato e '''nomegruppo''' col nome del gruppo desiderato.

<<Anchor(passwd)>>
== passwd ==

Il comando '''passwd''' consente di cambiare o impostare la propria password o la password di un utente.
 
 * Impostare la password dell'utente '''nomeutente''' : {{{
sudo passwd nomeutente
}}}Sostituire '''nomeutente''' col nome dell'utente scelto.<<BR>>
 * Cambiare la propria password: {{{
passwd
}}}

<<Anchor(groups)>>
== groups ==

Il comando '''groups''' permette di visualizzare i gruppi d'appartenenza del proprio utente o  d'un utente specifico.

 * Visualizzare i gruppi d'appartenza del proprio utente digitare: {{{
groups
}}}
 * Visualizzare i gruppi d'appartenza dell'utente '''nomeutente''' digitare: {{{
groups nomeutente
}}}Sostituire '''nomeutente''' col nome dell'utente scelto.<<BR>>

= Altri comandi utili =

== cat, zcat e less ==

I comandi '''cat''', '''zcat''' e '''less''' servono per mostrare il contenuto di un file:

 * '''cat''' mostra semplicemente il contenuto del file specificato;
 * '''zcat''' mostra semplicemente il contenuto del file [[AmministrazioneSistema/FormatiDiCompressione|compresso]] con <<Anchor(compressore)>> `bzip2`, `gzip`, `lzip` o `xz` specificato;
 * '''less''' visualizza il contenuto di file, permette di spostarsi avanti e indietro nel testo utilizzando i tasti freccia quando i file occupano più di una pagina di schermo. È inoltre possibile eseguire delle ricerche nel testo digitando «'''/'''» seguito dalla parola da cercare e premendo «'''Invio'''».

Per terminare il programma premere il tasto «'''q'''».

La sintassi del comando '''cat''' è la seguente:
{{{
cat nomefile
}}}

La sintassi del comando '''zcat''' è la seguente:
{{{
zcat nomefile.formatocompressione
}}}Sostituire '''nomefile''' col nome del file e '''formatocompressione''' col tipo [[#compressore|usato]].<<BR>>

La sintassi del comando '''less''' è la seguente:
{{{
less nomefile
}}}

== more ==

Il comando '''more''' viene solitamente utilizzato in abbinamento ad altri comandi. È un filtro che permette di visualizzare l'output di un comando una schermata alla volta.

Alcuni esempi d'uso del comando '''more''' abbinato ad altri comandi:

 * Il comando:{{{
ls | more
}}} permette di scorrere l'output del comando '''ls''' tramite il tasto '''Invio'''.
 * Il comando:{{{
cat miofile | more
}}} permette di visualizzare e scorrere il contenuto del file `miofile` tramite il tasto '''Invio'''.

Il simbolo «'''|'''», solitamente chiamato ''pipe'', serve per redirigere l'output del comando a sinistra al comando alla sua destra.

= Eseguire comandi con privilegi di amministrazione =

Per eseguire alcuni comandi come amministratori del sistema o per modificare file non all'interno della propria directory '''Home''', è necessario anteporre al comando la parola '''sudo'''. Per maggiori informazioni sui privilegi di amministrazione consultare la [[AmministrazioneSistema/PrivilegiDiAmministrazione|relativa guida]].

= Gestione dei pacchetti =

Per maggiori informazioni sui programmi per la gestione dei pacchetti in '''Ubuntu''', consultare la [[AmministrazioneSistema/InstallareProgrammi|relativa guida]].

= Ottenere maggiore aiuto =

Per ottenere maggiore aiuto o informazioni riguardo un determinato comando, esiste il comando '''man''' che serve per visualizzare il manuale di un determinato comando.

La sintassi del comando '''man''' è la seguente:
{{{
man [comando]
}}}

Ad esempio, per visualizzare la pagina di manuale dello stesso comando '''man''' è sufficiente digitare il seguente comando:
{{{
man man
}}}

Una volta all'interno del manuale, per poter spostarsi al suo interno, basta utilizzare le frecce direzionali. Per uscire dal manuale premere il tasto «'''q'''».

Quasi tutti i comandi accettano anche l'opzione '''-h''' (o '''--help''') che fornisce una breve descrizione sull'utilizzo del comando e delle sue opzioni. 

Per installare le versioni tradotte delle pagine di manuale consultare la [[AmministrazioneSistema/UbuntuItaliano#manpages|relativa guida]].

= Ulteriori risorse =

 * [[AmministrazioneSistema/Terminale|Guida all'utilizzo del terminale]]
 * [[http://linuxcommand.org/|Tutorial online con ulteriori esempi]]
 * [[http://man.he.net/|Versione HTML delle pagine man]]
----
CategoryAmministrazione