Home Studio - Remo Rombi
     
Home Linux Guida ai comandi Linux
Guida ai comandi Linux
Valutazione attuale: / 2
ScarsoOttimo 

Se state leggendo questo paragrafo, dopo aver letto tutti quelli precedenti, significa che avete deciso di approfondire la conoscenza di Linux andando oltre un utilizzo comune (a interfaccia grafica) che, da un punto di vista formale, non lo distingue molto da altri sistemi operativi quali Mac-OS e MS-Windows. Permettemi, prima di addentrarci nella conoscenza dei comandi di Linux, una brevissima premessa.

In pochi anni Linux è cresciuto, passando da terreno di sperimentazione per studenti e hackers a un concorrente per il mercato dei server, diventando poi un Sistema Operativo di tutto rispetto, che ricopre di diritto un ruolo nelle reti delle aziende e delle strutture dedite alla ricerca e allo studio. Lo storico impatto di Linux è ben superiore alla capacità da esso dimostrata di penetrare nel mercato dei sistemi operativi proprietari. Il suo successo ha ispirato moltissimi altri progetti di sviluppo di software gratuito o open source , tra cui Samba, GNOME, KDE e una impressionante collezione di progetti innovativi che si possono trovare presentati su numerosi siti come SourceForge . Presentandosi sia come piattaforma per altri sviluppatori sia come modello di sviluppo, Linux ha dato un incredibile impulso al progetto GNU della Free Software Foundation, che a sua volta ha fornito dei componenti software che si sono rivelati fondamentali nello sviluppo di Linux. In breve, Linux è uno dei principali protagonisti del più appassionante e produttivo movimento per la creazione di software gratuito che si sia mai visto.

I comandi di Linux non sono uguali a quelli dello Unix standard... sono migliori (ecco come ricevere un applauso dai "linuxiani"). Ciò è dovuto al fatto che la maggior parte di essi è stata creata dagli sviluppatori del progetto GNU della FSF (Free Software Foundation). L'acronimo GNU significa "GNU's Not Unix" ovvero "GNU non è Unix", dove la prima parola dell'acronimo è l'acronimo stesso, che è pensato per creare una sorta di espansione ricorsiva infinita. Grazie a numerosi anni di esperienza d'uso delle utility Unix standard e ai progressi della scienza informatica, i programmatori del progetto GNU sono riusciti a creare versioni degli strumenti standard più ricche di funzionalità, più veloci, più efficienti e prive dei bug e delle incoerenze che persistono ancora oggi nelle loro versioni originali. Mentre GNU ha fornito le utility di programmazione e i comandi standard come, per esempio, grep, la maggior parte degli strumenti di amministrazione di sistema e della rete è stata sviluppata dalla BSD . Inoltre, alcuni sviluppatori hanno creato strumenti per Linux che servono ad affrontare problematiche specifiche del sistema, come, per esempio, la manutenzione dei file system supportati solamente da Linux.

La raccolta che metto a disposizione, gratuitamente, documenta tutti i comandi standard Unix che sono comunemente disponibili nella maggior parte delle distribuzioni di Linux. Questa è solo una raccolta di comandi Linux: non insegna a utilizzare Linux. Questo lavoro è da considerarsi una guida di riferimento per i comandi dedicata agli utenti esperti e non esperti. Quando si ha una vaga idea di quale comando utilizzare, ma non ci si ricorda esattamente come funziona e quali opzioni metta a disposizione per ottenere il risultato desiderato, questa guida vi tornerà utile. Può tornarvi utile anche per venire a conoscenza di opzioni delle quali non sospettavate nemmeno l'esistenza.

Premesso quanto sopra, iniziamo con le primissime cose da imparare.

Tutti i comandi vengono interpretati nella shell, un programma che si occupa semplicemente di accettare comandi dall'utente e di eseguirli. Shell differenti utilizzano spesso sintassi leggermente diverse per riassumere lo stesso concetto. In Linux le due shell più diffuse sono bash e tcsh, ognuna delle quali si distingue per alcune sottigliezze (una delle cose interessanti di Linux e di altri sistemi operativi di derivazione Unix è l'esistenza di svariate shell tra le quali scegliere, ognuna con i propri punti di forza e debolezze).

Per poter lavorare seriamente dovrete imparare a utilizzare qualche utility più complessa e articolata, come per esempio un editor o degli strumenti di scripting. In Linux sono disponibili principalmente due editor: vi ed Emacs.

Ogni distribuzione di Linux è leggermente differente dalle altre, anche se vi renderete conto che la maggior parte dei comandi documentati in questa guida funziona allo stesso modo in tutte le distribuzioni. I comandi di base, le utility di programmazione, di amministrazione di sistema e di rete sono tutti documentati in questa guida, anche se alcuni argomenti erano troppo complessi ed estesi (per me) per essere inclusi. Daltronde il mio obiettivo era quello di fornire una guida compatta, facile e veloce da consultare. Certamente questa guida non include tutte le informazioni presenti nelle pagine del manuale in linea (man), ma nel 95% dei casi al suo interno troverete tutto ciò di cui avete bisogno.

Se state iniziando solo ora a lavorare con un sistema Linux, l'abbondanza di comandi potrebbe disorientarvi. Proverò ad aiutarvi con un breve elenco di comandi, su vari argomenti, di utilizzo frequente e comune.

GUIDA RAPIDA DI CONSULTAZIONE AI COMANDI LINUX PIÙ COMUNI E FREQUENTI
COMUNICAZIONE
ftp File Transfer Protocol
login Accesso
rlogin Accesso a un sistema remoto
rsh Esegue una shell o un singolo comando su un sistema remoto
talk Permette di scambiare messaggi in maniera interattiva con altri terminali
telnet Connette a un altro sistema
tftp Trivial File Transfer Protocol
uudecode Decodifica i file preparati con uuencode per l'invio per posta elettronica
vacation Risponde automaticamente ai messaggi di posta elettronica
CONFRONTO
cmp Confronta due file,byte per byte
comm Confronta gli elementi di due file ordinati
diff Confronta due file, linea per linea
diff3 Confronta tre file
GESTIONE FILE
cat Cocatena i file o li visualizza
chfn
Cambia le informazioni utente per finger, posta elettronica, ecc.
cksum
Calcola la checksum
chmod
Modifica le modalità di accesso ai file
chsh
Cambia la shell di login
cp
Copia file
csplit
Spezza i file in posizioni specifiche
dd
Effettua la copia file da e verso dischi in formato raw
file
Determina il tipo di un file
head
Mostra le prime linee di un file
less
Visualizza i file una schermata alla volta (vedi anche more)
ln
Crea degli alias per i nomi dei file
ls
Elenca file o directory (cartelle)
merge
Unisce le modifiche di diversi file
mkdir
Crea una directory (cartella)
more
Viusualizza i file una schermata alla volta (vedi anche less)
mv
Sposta o rinomina file o directory (cartelle)
newgrp
Cambia il gruppo corrente
pwd
Visualizza la directory (cartella) di lavoro
rcp
Copia file su un sistema remoto
rm
Elimina file
rmdir
Elimina directory (cartella)
split
Suddivide i file in modo uniforme
tail
Mostra le ultime linee di un file
wc
Conta righe, parole e caratteri
STAMPA
lpq
Mostra lo stato dei lavori di stampa
lpr
Invia alla stampante
lprm
Elimina un lavoro di stampa
lpstat
Ottiene lo stato della stampante
pr
Formatta e impagina per la stampa
PROGRAMMAZIONE
ar
Crea e aggiorna i file di libreria
as
Genera file oggetto
bison
Genera tabelle di parsing
cpp
Effettua il preprocessiong del codice C
flex
Analizzatore lessicale
g++
Compilatore C++ GNU
gcc
Compilatore C GNU
ld
Editor di link (link editor)
m4
Elaboratore di macro
make
Crea programmi
ranlib
Rigenera la tabella dei simboli dell'archivio
rpcgen
Traduce il codice RPC in codice C
yacc
Genera tabelle di parsing
MANUTENZIONE DEI PROGRAMMI
cvs
Gestisce diverse versioni (revisioni) di file sorgente
etags
Genera liste di simboli da utilizzare con l'editor Emacs
gctags
Genera liste di simboli da utilizzare con l'editor Vi
gdb
Debugger GNU (debug = mettere a punto, eliminare errori)
gprof
Visualizza dati di profiling di file oggetto
imake
Genera makefile da utilizzare con il comando make
make
Serve per la manutenzione, aggiornamento e rigenerazione di programmi e file correlati
nm
Visualizza la tebella dei simboli di file oggetto
patch
Applica patch (aggiustamento) al codice sorgente
rcs
Gestisce diverse versioni (revisioni) di file sorgente
size
Stampa le dimensioni di un file oggetto in byte
strace
Traccia le chiamate e i segnali del sistema
strip
Elimina simboli da un file oggetto
RICERCA
apropos
Cerca argomenti nelle pagine di manuale
egrep
Versione estesa di grep
fgrep
Cerca stringhe di testo letterali nei file
find Cerca nomi di file nel sistema
grep
Cerca pattern (un campione) di testo nei file
strings
Cerca pattern di testo nei file binari
whereis
Comando di ricerca
PROGRAMMAZIONE SHELL
echo
Riproduce nell'output gli argomenti indicati sulla linea di comando
expr
Esegue operazioni aritmetiche e confronti
prinf Formatta e stampa gli argomenti sulla linea di comando
sleep
Fa una pausa durante l'elaborazione
test Verifica una condizione
MEMORIZZAZIONE
bzip2
Comprime i file per liberare spazio
cpio Crea e scompatta gli archivi di file
gunzip
Espande i file compressi (.gz e .Z) (preferito)
gzip
Comprime i file per liberare spazio
shar
Crea un archivio di shell
tar
Copia file su o ripristina file da un supporto di archiviazione
zcat
Visualizza il contenuto di file compressi
STATO DEL SISTEMA
at
Esegue comandi in un secondo momento
atq
Mostra i lavori messi in coda da at
atrm
Rimuove i lavori messi in coda da at
chgrp
Cambia il gruppo di un file
chown
Cambia il proprietario di un file
crontab
Automatizza i comandi
date
Visualizza o imposta la data
df
Mostra lo spazio libero su disco
du
Mostra l'uso del disco
env
Mostra le variabili di ambiente
finger
Visualizza informazioni sugli utenti
kill
Termina un comando in esecuzione
printenv
Mostra le variabili di ambiente
ps
Mostra i processi
stty
Imposta o visualizza le impostazioni di terminale
who
mostra chi è connesso
ELABORAZIONE DI TESTO
col
Elabora i caratteri di controllo
cut
Seleziona le colonne da visualizzare
ex
Un editor di linee che sta sotto Vi
expand
Converte i tab in spazi
fmt
Produce linee di lunghezza più o meno uniforme
fold
Interrompe le righe
gawk
Elabora linee o record uno alla volta
ghostscript
Visualizza file PostScript o PDF
groff
Formatta l'input di troff
ispell
Controlla l'ortografia interattivamente
join
Unisce diverse colonne in un database
paste
Unisce colonne o ne scambia l'ordine
rev
Visualizza le linee in ordine inverso
sed
Editor di testo non interattivo
sort
Ordina o unisce file
tac
Visualizza le linee in ordine inverso
tr
Traduce (ridefinisce) i caratteri
uniq
Trova le linee ripetute o quelle uniche in un file
vi
Editor di testo visuale
xargs
Elabora molti argomenti in porzioni maneggevoli
COMANDI VARI
banner
Crea dei poster a partire da parole
bc
Calcolatrice di precisione arbitraria
cal

Visualizza il calendario

clear
Pulisce lo schermo
man
Fornisce informazioni su un comando
nice
Riduce la priorità di un lavoro
nohup
Mantiene in esecuzione un lavoro dopo la disconnessione
passwd
Imposta la password di login
script
Produce una trascrizione della sessione di login
su
Permette di diventare superutente (sudo per la distro Ubuntu)
tee
Memorizza l'output in un file e contemporaneamente lo invia allo schermo
which
Visualizza il percorso comando
a cura di Remo Rombi