Riassunto dei comandi Linux

Sistema
Pipelines e simili
Accounts
Gestione files
Gestione dei Filesystem
Archivi
Files di testo
Rete
Gestione pacchetti
Applicazioni a grafica testuale
Applicazioni con GUI
Alcuni files di configurazione
Script di Shell
Keyboard related commands
La/Tex

Presentazione

Questa non è una guida, e non è solo una lista di comandi. È da intendersi più come un prontuario dei comandi più comuni.
Tutti i comandi sono nella stessa pagina, quindi si può usare una funzione di ricerca del browser, oppure i link qui a fianco.

Per i principianti: indico con * i comandi che è opportuno imparare subito.

Indico con b i comandi builtin (mi riferisco alla shell bash).

Questo file deriva, alla lontana, da una lista di comandi di FreeBSD.

[Ororo]

Links

Rimando anche al sito www.coresis.com, c'è un bel corso introduttivo a Linux, e al wiki dove sono descritti più in dettaglio i comandi di base. Per iniziare c'è un topic qui. Qui sta il manualinux. Un'altra lista di comandi.

Sistema Su
Comando/Sintassi Cosa fa
alias newname ='stringa' b Crea un nuovo comando, che però esiste soltanto in memoria volatile. D'altra parte è più veloce di uno script.
bg %job-number b esegue in background un processo della lista dei job. Ossia, tale processo non blocca la shell. Si veda anche jobs.
chsh [-s newshell] username Cambia la shell di login dell'utente (spesso solamente attraverso il super-user)
chpass [-s newshell] username (sintassi FreeBSD)
command comando b Esegue il comando comando, ignorando tutti i possibili alias che sono stati definiti. Confronta builtin.
date [opzioni] Riporta data e ora corrente
disown %job b Elimina un certo %job dalla lista dei job, ma senza chiuderlo. Confronta kill.
echo [stringa di testo] b Riporta la stringa di testo specificata in standard output
eject [-t] Espelle / richiude il vassoio CD
exit b Chiude la shell
fg %job-number b Esegue in foreground un processo interrotto. Ossia, la shell è bloccata finchè il processo non termina. Si veda anche jobs.
free Visualizza quanta memoria (RAM e swap) è attualmente usata e quanta è libera. Confronta invece df, du
grub-install --root-directory=floppy-già-montato device
grub-install --root-directory=/media/floppy fd0
Installa GRUB su floppy (disco d'avvio). Poi sarà necessario copiare anche il menu.lst su /media/floppy/boot/grub.
update-grub Dopo avere modificato /boot/grub/menu.lst, è buona norma richiamare update-grub... (N.B. con GRUB2 le cose cambiano)
help comando b visualizza una breve schermata d'aiuto, per le funzioni built-in. Confrontare man e info.
hostname Visualizza o setta (solamente super-user) il nome della macchina attuale
jobs b Elenca i jobs attuali, ossia i programmi che sono stati sospesi durante la sessione (tipicamente sono stati sospesi usando CTRL+Z) ma anche quelli che sono stati lanciati con &. Si veda anche kill.
kill [opzioni] [-SEGNALE] [pid|%job] b Manda un segnale al processo specificato dall'identificatore di processo (pid) o dall'identificatore di job (%job). Il segnale di default è SEGKILL, che termina il processo. NB. il processo deve essere attivo: se è stato bloccato e.g. con CTRL+Z, bisogna poi riattivarlo con fg, e solo allora riceverà il segnale. N.B. il processo viene terminato brutalmente, i dati non salvati sono persi. Confronta disown, pkill, kquitapp.
pkill name b Termina tutti i processi con questo nome. N.B. il processo viene terminato brutalmente, i dati non salvati sono persi. Si veda anche ps, kill.
kquitapp applicationname In KDE, termina una applicazione. E' un po' meno letale di kill.
lpq [opzioni] Visualizza lo stato dei job di stampa
lpstat [opzioni]
lpr [opzioni] file Stampa sulla stampante specificata
lp [opzioni] file
lprm [opzioni] Rimuove un job di stampa dalla coda di stampa
cancel [opzioni]
lsmod Utilities per visualizzare, rispettivamente: i moduli caricati; i files aperti; l'hardware installato; le periferiche PCI (e.g. schede grafiche), PCMCIA, HAL (Hardware Abstraction Layer), USB.
FreeBSD: molti di questi comandi non esistono, ma ne esistono di analoghi, come devinfo, swapinfo, sysctl -a
lsof
lshw
lspci
lspcmcia
lshal
lsusb
modprobe [--remove] modulename
modprobe -l
Carica/scarica un dato modulo nel kernel. Con -l lista i moduli installati nel sistema; cfr. lsmod. FreeBSD: i comandi equivalenti a lsmod, modprobe sono kldstat, kldload, kldunload.
ps [opzioni]
ps ax|grep name
b Visualizza lo stato e il pid dei processi attivi, aperti dalla finestra attuale. Usare l'opzione -adef o ax per avere tutti i processi e più dettagli. Confronta top, pgrep.
pgrep name Visualizza il pid di tutti i processi con questo nome. Si veda anche ps, grep.
pushd newdir Per cambiare directory salvando la precendente in uno stack usare pushd. popd recupera la prima dello stack, dirs mostra il contenuto dello stack.
popd
dirs
pstree Visualizza tutti i processi attivi con un diagramma ad albero. I processi dovrebbero generarsi tutti da init.
pwd b* Visualizza la directory di lavoro (corrente)
reboot Riavvia / Spegne il sistema. Confronta shutdown.
halt
poweroff
init 6
script file Memorizza ogni cosa che appare sullo schermo in un file fino a quando si esegue exit. Non è funzionale per memorizzare uno script su disco.
set
set varname=content
PATH=/usr/lib:$PATH
Visualizza/setta le variabili d'ambiente. Cfr. gli script di shell.
shutdown -r time
shutdown -h time
Riavvia / spegne il sistema dopo un tempo presfissato. time può essere: numero minuti, oppure hh:mm, oppure now. Se non specifichi -r / -h fa casino... (arresta, ma non spegne né riavvia)
source file b Legge i comandi dal file specificato e li esegue nella shell corrente. source per la shell C, . per la shell Bourne. Usare solo il punto significa che lo script è "incluso" anzichè "richiamato".
./file *
. file
stty [opzioni] Setta o visualizza le opzioni del terminale di controllo
suspend b Blocca la shell fino alla ricezione di un segnale SIGCONT.
update-rc.d servicename comando Gestisce i servizi in /etc/init.d, e controlla quali di essi vanno caricati automaticamente, mettendoli nelle directory /etc/rc*.d corrette. I comandi ammessi: start, stop, defaults, remove.
unset varname b Elimina la variabile d'ambiente varname.
unalias aliasname b Elimina aliasname dalla lista degli alias.
uname
uname -a
Ottiene il nome del sistema operativo, la versione del kernel e altro.
wait job-or-pid b Aspetta la terminazione del job o del processo PID indicato.
which comando riporta il percorso del comando o l'alias di shell in uso
startx
X
X -configure
(da console) X avvia il server X. Lo script startx richiama X e poi avvia anche l'ambiente grafico. X -configure serve a settare il file /etc/X11/xorg.conf automaticamente.

Pipelines e simili Su
Comando/Sintassi Cosa fa
comando > filename Redireziona l'output di comando verso il filename. Il file viene cancellato e sostituito dal nuovo testo.
comando >> filename Redireziona l'output di comando verso il filename. Il testo viene appeso in coda al file.
comando < filename Usa il filename come input di comando.
comando < filename-in > filename-out
comando < filename-in >> filename-out
Combinazione delle precedenti.
comando1 | comando2Pipeline. L'output di comando2 verrà usato come input di comando1. I due programi sono avviati in parallelo.
comando1 && comando2Esegue i due comandi uno dopo l'altro.
comando & Esegue il comando in background. È come usare bg.

Accounts Su
Comando/Sintassi Cosa fa
adduser opzioni Crea un nuovo utente, o un nuovo gruppo (di utenti), o aggiunge un utente ad un gruppo esistente.
pw adduser name (sintassi FreeBSD)
addgroup group Crea un nuovo gruppo (di utenti). Per modificare i gruppi non ho trovato comandi, ma si può modificare direttamente i file /etc/group.
pw addgroup name (sintassi FreeBSD)
chgrp [opzioni] gruppo file Cambia il gruppo di appartenenza di un file
chmod permessi file
chmod a+rw file
chmod +x script
chmod 755 /
Cambia i permessi di accesso a file o directory. Confronta chown.
I permessi possono essere specificati con a/u/g/o (all/user/group/others) seguito da +/- seguito da r/w/x (read/write/execute). Se si vogliono settare tutti i possibili permessi, conviene specificarli come triple ottali di numeri per user, group, others:
4 -> r
2 -> w
1 -> x
esempio: chmod 741 file
corrisponde a: chmod u+rwx,g+r-wx,o+x-wr
dà al proprietario di file il permesso di lettura, scrittura e esecuzione, al gruppo solo di lettura e agli altri solo di esecuzione (paradossale lo so è un esempio...).
(-r per cambiare i permessi ricorsivamente di tutte le sottodirectory)
chown [opzioni] proprietario [:gruppo] file
chown -r utente:utente /home/utente
Cambia il proprietario di un file (-r per cambiare i permessi ricorsivamente di tutte le sottodirectory)
groupadd gruppo Analogo ad addgroup, ma è di più basso livello. Di preferenza usare l'altro (almeno in Debian).
id Visualizza i dati dell'utente attualmente loggato
login Comandi tradizionali per il login/logout; ma sono inutili, servono solamente da console (cosiddetta login shell). Confronta exit
logout b
last Dice chi si è loggato, quando e da dove (utile su server).
passwd [opzioni] * Setta o modifica la propria password.
su [nomeutente] * Login del super-user. MA in Kubuntu tale super-user potrebbe anche non esistere (è il mio caso), quindi ignorare questo comando.
sudo [-u nomeutente] comando * Comando eseguito in modalità super-user. Verrà richiesta la password. Vedere kdesudo, gksudo.
sudo [-u nomeutente] -i * Passa alla modalità super-user.
ulimit [opzioni] b Visualizza/modifica i limiti di utilizzo di alcune risorse del sistema da parte dell'utente. (A rigore, sono i limiti della shell).
useradd opzioni Analogo ad adduser, ma è di più basso livello. Di preferenza usare l'altro (almeno in Debian).
who o w Riporta chi è “loggato” e quali processi ha in esecuzione.
whoami Visualizza il nome dell'utente attuale.

Gestione dei Filesystem Su
Comando/Sintassi Cosa fa
df Riporta il sommario dei blocchi del disco e degli inode liberi e usati. Confronta invece free,du.
du [directory o file]
du Documenti/windata -L --max-depth=2
Riassume l'uso del disco di ogni file, ricorsivamente per le directory. Confronta invece free,df.
fsck [opzioni] device
fsck.ext2 [opzioni] device
...
File system Check: verifica l'integrità, ripara il filesystem.
fdisk -l
fdisk [opzioni] device
Visualizza / modifica la tabella delle partizioni di un'unità disco. (occorre essere super-user anche solo per visualizzare). FreeBSD: al posto di fdisk -l è sufficiente fdisk senza argmenti.
blkid Visualizza l'UUID di tutti i device
fdformat [opzioni] device Formattazione "a basso livello" (???) in generaele quello che serve è mkfs.
mkfs device
mkfs.ext2 device
...
* Make file system: formatta un disco.
mount [-t filesystem] something somewhere
sudo mount -t ext2 /dev/fd0 /media/floppy
sudo mount --bind /vecchia/cartella /nuovo/percorso
* Monta una periferica. somewhere sarà il suo nuovo indirizzo (da usare come device)... deve essere una cartella già esistente!!! Per smontare vedere umount. Per i dischi da montare automaticamente: /etc/fstab.
Con l'opzione --bind si può montare anche un dispositivo già montato altrove.
sync Sincronizza un filesystem con la sua cache, ossia scrive su disco gli eventuali dati "in attesa".
umount device * Smonta una periferica. Confronta mount.
vol_id -u nome_device
vol_id -u /dev/sda1
Ottiene info (in particolare l'UUID) sulla device.

Gestione files Su
Comando/Sintassi Cosa fa
cd [directory] b* Cambia directory
cmp [opzioni] file1 file2 Confronta due file e visualizza dove avvengono le differenze (file di testo e file binari). Confronta diff.
cp [opzioni] file1 file2
cp -r dir1 dir2
* Copia file1 in file2. Questo comando crea o sovrascrive file2. Se si vuole copiare una directory e tutto il suo contenuto, usare l'opzione -r.
dd [if=infile] [of=outfile] [operando=valore] Copia un file, converte tra ASCII e EBCDIC o scambia l'ordine di byte, come specificato.
file [opzioni] filename Classifica il tipo di file.
find directory [opzioni] [azioni]
find / -xdev -iname "filename.ext"
find . -name '*.tmp' -exec rm {} \;
* Cerca file basandosi sul tipo o su uno schema. Può anche effettuare una prefissata operazione su tutti i files trovati. Per cercare files contenenti n dato teso, vedi grep.
sudo find . -xdev -iname '.*' -type f -exec grep text '{}' \; -print0|more
locate filename-pattern * Cerca file basandosi sul filename-pattern. A differenza di find, cerca i files solamente all'interno di un suo database, che deve essere aggiornato con updatedb.
ln sorgente destinazione Crea un hard-link di nome destinazione a sorgente. Non è un nuovo file! La struttura della directory UNIX non è ad albero, ma piuttosto a grafo aciclico, quindi lo stesso file può essere raggiunto da più cartelle. Si può linkare soltanto un file (non una cartella), e sullo stesso volume.
Invece con l'opzione -s crea un sotf-link di nome destinazione a sorgente. Ossia, un nuovo file che punta all'altro.
ln -s sorgente destinazione
ls [opzioni] [directory o file] * Elenca il contenuto della directory specificata o i permessi del file specificato (-l visualizza i dettagli; -r le sottodirectory)
mkdir [opzioni] directory * Crea una directory
mv [opzioni] file1 file2 * Muove (=sposta) file1 in file2. Il file è semplicemente rinominato.
pwd b* Stampa la directory di lavoro corrente.
rm [opzioni] file
rm -r file
* Rimuove (=elimina) un file o una directory (-r elimina una directory ed il suo contenuto, -i chiede conferma prima di eliminare i file, -f non chiede mai nulla).
rmdir [opzioni] directory * Rimuove una directory vuota.
touch [opzioni] [data/ora] file "Tocca" un file senza modificarlo, ossia aggiorna l'ora di ultima modifica. Se il file non esiste, di default lo crea.
tree [directory] Visualizza il contenuto di una directory e delle sotto-directory
updatedb * Aggiorna il database per la ricerca di files (cfr. locate). Bisogna essere super-user.
uudecode [file] Decodifica un file codificato con uuencode, riportandolo al file originale.
uuencode [file] nuovo_nome Codifica un file binario in codice ASCII 7-bit; utile quando lo si trasmette via email, per essere poi decodificato come nuovo_nome alla destinazione.
whatis [opzioni] filename Dice (se riesce) che tipo di oggetto è filename. Per i comandi ne dà la descrizione.
whereis [opzioni] comando * Riporta le locazioni del binario, del sorgente e della pagina man per il comando specificato.

Archivi Su
Comando/Sintassi Cosa fa
bzip2 [opzioni] files Comprime / decomprime un archivio .bz2
bunzip2 file.bz2
bzcat file.bz2 Concatena (lista) il file decompresso a video, lasciando il file compresso su disco
compress [opzioni] file Comprime / decomprime un archivio .Z (che contiene un singolo file).
uncompress file.Z
gzip [opzioni] file * Comprime / decomprime un archivio .gz (che contiene un singolo file)
gunzip [opzioni] file
zcat file.Z Concatena (lista) il file decompresso a video, lasciando il file compresso su disco.
unrar file.rar Decomprime un archivio .rar. Immagino esista anche il corispondente rar.
tar [opzioni] [files]
tar -xvf nomearchivio.tar
tar -cvf nomearchivio.tar files
tar -zxvf nomearchivio.tgz
tar -zcvf nomearchivio.tgz files
* De/comprime archivi .tar ("archivio a nastro", non compresso)
Estrae un archivio
Crea un nuovo archivio
Estrae un archivio compresso .tar.gz (o .tgz).
Crea un nuovo archivio compresso .tar.gz (o .tgz).
zip [options] filename Comprime / decomprime archivi .zip.
unzip filename

Files testuali Su
Comando/Sintassi Cosa fa
awk/nawk/gawk [opzioni] file Potente mezzo per modificare file di testo: prende in input una riga, cerca dei pattern, li sostituisce con output ad hoc. Serve un manuale apposta per questo programma, e.g. questa.
cat [opzioni] file Concatena (ossia scrive su schermo) un file.
cut (opzioni) [file] Taglia specifici campi/caratteri dalle linee del file specificato.
diff [opzioni] file1 file2 Confronta i due file e visualizza le differenze (solamente file di testo). Confronta cmp.
ed [opzioni] file Editor a linea di comando.
grep [opzioni] 'stringa di ricerca' argomento
grep -ir miotesto .
Ricerca nell'argomento (in questo caso probabilmente un file) tutte le occorrenze della stringa di ricerca specificata e visualizza le righe in cui compare. È possibile specificare un'intera cartella di files, in tal caso usare -r;-i per non distinguere le maiuscole e minuscole.
egrep [opzioni] 'stringa di ricerca' argomento
fgrep [opzioni] 'stringa di ricerca' argomento
head [-numero] file Visualizza le prime 10 (o numero) linee di un file.
md5sum file
md5sum file && echo md5atteso
Restituisce una certa funzione hash di un dato file. Utile per verificarne l'integrità.
more file * Impaginatore di un file testuale.
less file
pg file
msgfmt -v -o filename.mo filename.po
msgfmt -v -o kate.mo it.po
Viene usato per codificare un file delle traduzioni (.po) in binario (.mo). I files .mo poi possono essere messi direttamente nella cartella ad hoc, che potrebbe essere /usr/share/locale/it/LC_MESSAGES, ma devono avere il nome dell'applicazione corrispondente (e.g. kate.mo).
paste [opzioni] file Incolla campi nelle linee del file specificato.
patch [options] [originalfile [patchfile]]
patch -p num < patchfile
Applica una patch a originalfile.
pr [opzioni] file Filtra il file e lo stampa su un terminale.
sed [opzioni] file Editor di flusso per editare file da uno script o da linea di comando.
sort [opzioni] file Ordina le linee del file specificato basandosi sulle opzioni scelte.
strings [opzioni] file Riporta sequenze di 4 o più caratteri stampabili terminanti in <NL> o <NULL>. Generalmente viene usato per ricercare in file binari stringhe ASCII.
tail [-numero] file Visualizza le ultime 10 (o numero) linee di un file.
tee [opzioni] file Copia standard output in uno o più file.
tr [opzioni] stringa1 stringa2 Traduce i caratteri di stringa1 provenienti da standard input in quelli di stringa2 per standard output.
uniq [opzioni] file Rimuove le linee ripetute in un file.
wc [opzioni] [file] Visualizza il numero di parole (o di caratteri o di linee) del file specificato.

Gestione pacchetti Su
Comando/Sintassi Cosa fa
Red Hat
rpm [opzioni]
rpm -i file
rpm -a|grep name
Gestione pacchetti .rpm. Non funziona in ambiente Debian! usare alien.
Installa un .rpm già scaricato.
Cerca i pacchetti installati con un certo nome.
yum ... L'analogo di apt-get in Red Hat (handles .rpm files).
SUSE
zypper, yast ... Gli analoghi di apt-get e synaptics in SUSE (handles .rpm files).
ArchLinux
pacman ... L'analogo di apt-get in archlinux (handles what? probabilmente compila da sorgente).
Debian e *Ubuntu
alien file Converte pacchetti .rpm in .deb e viceversa.
apt-get [opzioni]
apt-get install package-name
apt-get remove package-name
apt-get purge package-name
apt-get upgrade [package-name]
apt-get autoclean
apt-get autoremove
* Gestione pacchetti .deb. Analogo della versione grafica Adept, o Synaptic. Internamente richiama dpkg.
Installa
Rimuove ma non cancella i file di configurazione
Rimuove
Aggiorna
Cancella file .deb temporanei.
Rimuove pachetti installati automaticamente e non più necessari
dpkg -i file Installa un pacchetto .deb
dpkg -l|grep name Cerca i pacchetti installati con un dato nome
dpkg --force-help Lista delle opzioni di forzatura ... da usare con cautela...
aptitude opzioni Versione evoluta (e più complicata) di apt-get. La differenza più evidente è che all'atto della rimozione elimina anche i pacchetti orfani, mentre con apt-get bisogna poi fare un apt-get autoremove.
gdebi file Installa un pacchetto .deb... richiamando dpkg...
gpg opzioni
->Un possibile utilizzo:
KEY=31A5F97FED8A569E
gpg --keyserver subkeys.pgp.net --recv $KEY
gpg --export --armor $KEY | sudo apt-key add -

->Alternativa, senza gpg:
wget filename.pub
sudo apt-key add filename.pub
gpg può fare un sacco di cose (vd. GnuPG). La più utile, importare la firma elettronica di un repository, cosicchè apt non segnali continuamente warnings.
./configure
make
sudo make install
make clean
Tipica sequenza per installare un pacchetto dal codice sorgente. Ma in Debian è preferibile la prossima.
./configure
make
sudo checkinstall
make clean
Sequenza per compilare e installare un pacchetto dal codice sogente in Debian.
Gentoo
emerge --sync
emerge [--pretend] packagename emerge [--pretend] --unmerge packagename
In Gentoo, installa un pacchetto compilandolo dal codice sorgente. Il sistema di installazione prende il nome di Portage. Un'interfaccia grafica dovrebbe essere portato (???). Sconsigliasi usare Portage in Sabayon... Gestice files .ebuild. Con --pretend, simula soltanto l'installazione.
--unmerge è usato nelle disinstallazioni, ma non mi pare l'ideale...
equery list|grep packagename Elenca i package installati.
emerge --update --newuse --deep world
emerge --depclean [--pretend]
revdep-rebuild -i
Sequenza per rimuovere i package orfani.
Sabayon
equo, spritz ...
equo search packagename
equo install packagename [--pretend]
Gli analoghi di apt-get e synaptics in Sabayon. Il sistema di installazione prende il nome di Entropy.
FreeBSD (ok, ok, non è Linux).
cd /usr/ports/nome-pacchetto
make
e, se tutto è ok:
make install clean
Tipiche sequenze per installare/disinstallare un port (=pacchetto da codice sorgente). make deinstall rimuove un port fottendosene delle dipendenze!!!
cd /usr/ports/nome-pacchetto
make deinstall
pkg_fetch nome-pacchetto
pkg_add -r nome-pacchetto
pkg_delete nome-pacchetto
Scarica/Installa/Disinstalla un pacchetto precompilato.
portsnap fetch extract
portsnap fetch update
Scarica/aggiorna la lista dei port.
portupgrade -aP --batch Aggiorna tutti i port attualmente installati. -P permette di usare i package precompilati, qualora presenti. --batch evita domande futili. portsmanager e portmaster sono altri due utility equivalenti.
portsmanager -u
portmaster -a
cvsup nome-supfile-già-configurato Metodo alternativo (e complicato) per scaricate la lista dei port
sysinstall GUI per installazione di port.
portsclean -C
portsclean -DD
pkgdb -F
Operazioni di manutenzione per la lista dei port e per il registro dei package installati. -C pulisce le build directory, -DD cancella i distfiles, pkgdb -F corregge le inconsistenze tra i port installati.

Rete Su
Comando/Sintassi Cosa fa
ifconfig [opzioni]
ifstatus scheda-di-rete
Visualizza/setta impostazioni delle schede di rete.
iwconfig [opzioni] Visualizza/setta impostazioni delle schede di rete wireless.
ifup|ifdown scheda-di-rete Dis/abilita una scheda di rete.
sudo /etc/init.d/networking restart Fa ripartire da capo la rete.
pppoeconf Configura una connessione PPP over ethernet (tipo DSL). NON usarlo se stai usando NetworkManager!!!
finger [opzioni] user [@nomehost] Riporta informazioni circa gli utenti di macchine locali e remote.
ftp [opzioni] host Trasferisce file utilizzando il protocollo di trasferimento di file (FTP).
ping nomehost Verifica la connettività verso un certo indirizzo.
rcp [opzioni] nomehost Copia file in remoto dalla macchina corrente in un'altra macchina.
rlogin [opzioni] nomehost Effettua il login in remoto su un'altra macchina.
route [opzioni] Visualizza / modifica la tabella degli indirizzi IP per raggiungere il gateway. Tra l'altro, mostra l'indirizzo del gateway.
rsh [opzioni] nomehost Shell remota da eseguire su un'altra macchina.
scp source dest
sftp source dest
Copia di file da/su remoto, via protocollo SSH.
ssh [-l nomeutente] nomehost Effettua il login in remoto su un'altra macchina, mediante protocollo SSH.
ssh [-l nomeutente] nomehost comando Esegue un singolo comando su remoto. Login mediante protocollo SSH.
telnet [host [porta]] Comunica con un altro host usando il protocollo telnet.
wget -r -l numero_livelli URL Scarica un intero sito (in realtà ci sono molte altre opzioni).

Alcune (vecchie) applicazioni testuali. L'unica interessante è il manuale, e magari od. Su
Comando/Sintassi Cosa fa
emacs [opzioni] file Editor a schermo-pieno
info comando Visualizza la pagina di info (che è tipo un manuale...) del comando specificato. Confronta man e help.
mail [opzioni] [user] Semplice utility per la posta elettronica disponibile su un sistema Unix. Si digita un punto come primo carattere su una nuova linea per trasmettere il messaggio, un punto interrogativo per richiamare l'help
mailx [opzioni] [user]
Mail [opzioni] [user]
man [opzioni] comando Visualizza la pagina di manuale del comando specificato
od [opzioni] file Dump su un file binario, in ottale, in ASCII, in esadecimale, in decimale o in modalità carattere.
od -txz -Ax file
top Versione sofisticata di ps
vi file
ex file
Editor visuali, a pieno schermo. Leggersi bene la guida, ad esempio qui.
editor file
nano file
Editor visuali più intuitivi.

Alcune applicazioni KDE (GUI): Su
Comando/Sintassi Cosa fa
adept_manager, adept_installer (Kubuntu)
kpackage (KDE)
synaptics (Debian,Ubuntu)
yast (SUSE)
Per dis/installare pacchetti. adept_installer, rispetto a adept_manager, permette soltanto di dis/installare applicazioni.
ark Gestore di archivi
amarok per ascoltare musica
kaffeine lettore CD/DVD
konqueror navigazione files; navigazione web; apre i documenti più comuni.
kwrite, kate filename editor di testo
kinfocenter, kcontrol, systemsettings Vari pannelli di controllo KDE.
kdesudo applicazione Alternativa grafica a sudo. È consigliato quando si devono lanciare applicazioni grafiche in KDE.
kmail client email (fa parte del pacchetto kontact)
kontact In un unico applicativo sono racchiusi: client email (kmail), calendario e agenda (korganizer), rubrica (kaddressbook), notes (knote), ...
kwalletmanager Gestore del Portafogli KDE (appare nel vassoio di sistema). Il portafogli conserva le password.
karm Demone per far partire un programma ad un istante prefissato.
k3b masterizzazione CD (molto completo)
kfind Cerca files su disco. NON MI FUNZIONA! probabilmente è come find ma non supporta -xdev
kghostwiew, kpdf Lettori .ps, .eps, .pdf
kdvi Lettore .dvi
kile, TexMaker Interfacce La/Tex. (MA il compilatore latex come si chiama? TeTex? o TexLive?)
gucharmap, kcharselect Tabella dei caratteri.
plasma In KDE4, è l'applicazione che gestisce desktop, panelli, widgets.

Alcune applicazioni GNOME (GUI): Su
Comando/Sintassi Cosa fa
gnome-panel --replace Fa ripartire tutti i pannelli
gconf-editor Registro di configurazione di Gnome. Tipo il regedit.exe di windows...
gksudo applicazione Alternativa grafica a sudo. È consigliato quando si devono lanciare applicazioni grafiche in Gnome.

Altre applicazioni GUI:

Comando/Sintassi Cosa fa
oowriter OpenOffice
oomath
oocalc
ooimpress
oodraw
acroread Adobe Reader (ex Acrobat Reader)
compiz-manager &
gnome-wm &
icewm --replace&
metacity --replace&
Vari window manager. (Ossia disegnano la finestra intorno alle applicazioni).
emerald --replace &
gtk-window-decorator --replace &
Vari window decorator. Ossia, dei plugin del window manager. Ad esempio, se richiami emerald --replace, automaticamente il wm verrà sostituito da compiz.
ccsm Configurazione di compiz

Alcuni files di configurazione: Su
File Descrizione
/boot/grub/menu.lst Menu' del bootloader. menu.lst era usato da GRUB-Legacy, invece GRUB2 usa grub.cfg.
/boot/grub/grub.cfg
/home/username/.bashrc Eseguito all'ingresso in una non-login shell di bash
/home/username/.bash_logout Eseguito all'uscita della login shell di bash
/etc/inputrc
~/.inputrc
Utile se devi modificare la mappatura della tastiera per la shell
/etc/issue Conserva nome e versione della distribuzione Linux
/etc/fstab Static filesystem information: dice quali dischi montare all'avvio, e come.
/etc/resolv.conf Contiene gli indirizzi dei vari DNS. (Se il PC è connesso, e Skype funziona ma il browser e il mailer no, probabilmente sono sbagliati i DNS).
/home/username/.kde/Autostart/ Cartella che contiene file di configurazione del desktop eseguiti automaticamente all'avvio
/etc/init.d Avvio dei processi di Linux, richiamati subito dopo init. Fra questi, kdm....
/etc/rc*.d Avvio dei processi di Linux, divisi per errorlevel. Richiamati subito dopo init. Fra questi, kdm....
/etc/X11/xorg.conf File di configurazione del server X
/etc/passwd File che conserva le associazioni utenti / numeri utenti / home / shell predefinita.
/etc/group File che conserva le associazioni gruppi / numeri gruppi / utenti

Script di Shell (bash) Su
Comando / Struttura Descrizione
#!/bin/sh
echo "Numero parametri = "$#
echo "Nome del Programma = "$0
echo "Parametri introdotti = "$*
Esempio di script.
#!/bin/bash Prima riga di una script (si specifica la shell che deve essere richiamata)
'stringa comune'
"stringa escape, con \n e $n"
Come scrivere stringhe
PATH=/usr/bin
PATH=/usr/bin:$PATH
Assegnazione di variabili. Se pippo è il nome di una variabile, il suo valore è restituito da $pippo.
Le variabili di shell sono composte di un singolo carattere. Ne seguono alcune:
$#il numero di argomenti della linea di comando, che sono stati passati allo shell script
$?il valore numerico di uscita dell'ultimo comando che è stato eseguito
$0il nome dello shell-script, che è stato introdotto
$nla n-esima vairabile passata allo script (n=1..9)
$*tutti gli argomenti su linea di comando (es. "1 2 3 4")
$!il numero dell'ultimo processo che è stato mandato in background con la &
$-i flag con cui è stata eseguita la shell
$@tutti gli argomenti su linea di comando, ognuno quotato separatamente (es. "1" "2" "3" "4")
$$numero ID del processo corrente
PATH
HOME
Le più note variabili di ambiente.
export var=value b La modifica alle variabili d'ambiente in genere è solo locale. Con export le variabili vengono esportate anche fuori.
ifcomandi;
then
comandi1;
else
comandi2;
fi
b Struttura if.
for var in valore1 valore2;
do
comandi;
done
b Struttura for.
while comandi;
do
comandi;
done
b Struttura while.
case stringa in
pattern1)comandi1;
pattern2)comandi2;
esac
b Struttura switch.
nomefunzione () {
codice
[return value]
}
b Dichiarazione di funzioni
builtin command b Esegue il comando originale builtin command, anche se tale comando fosse stato ridefinito. Confronta command.
break b Interrompe un ciclo for, while, until.
continue b In un ciclo for, while, until termina il ciclo corrente e passa al prossimo.
eval comando b Esegue il comando, il quale tipicamente è una stringa costruita nelle maniere più diverse.
local varname[=value] b Crea una variabile locale (dentro una funzione).
expr argomenti Valuta gli argomenti. Usato per l'aritmetica, ecc. in shell.
exit [n] Termina lo script (in effetti termina la shell) con exit status n.
shift [n] b Cambia la numerazione dei parametri. I parametri $1...$n spariscono, gli altri vengono scalati di n. Di default n=1.
read [-u file] varnames b Legge una o più variabili da tastiera, oppure da file se un file è specificato.
readonly varname[=value] b Imposta come read-only una certa variabile.
test opzioni
test -n $1
test ($1 -eq $2)-a($1 -le $3)
b Tipico operatore booleano.
read [-u file] varnames b Legge una o più variabili da tastiera, oppure da file se un file è specificato.
sleep seconds Pausa per un seconds secondi.
trap function signal b Esegue la funzione specificata solo quando la shell riceve il segnale signal.

Keyboard related commands Su
La tastiera genera scancodes, che poi saranno convertiti in keycodes e keysym.
Comando Descrizione
sudo dumpkeycodes
sudo dumpkeycodes > filename.map
Stampa su schermo la mappa che associa scancodes/keycodes.
sudo setkeycodes scancode keycodeCrea una singola associazione scancode/keycode
sudo getkeycodesStampa la tabella delle associazioni scancode/keycode
xevStampa su schermo tutti gli eventi che accadono; in particolare, i codici (keycode e keysym) dei tasti premuti.
sudo showkey
sudo showkey -s
La brutta copia di xev; di default mostra i keycode, con -s lo scancode.
sudo dumpkeys
sudo dumpkeys > filename.map
Stampa su schermo la mappa che associa keycodes/keysym
sudo loadkeys filename.mapCarica una mappa keycodes/keysym
xbindkeysAssocia keycodes / applicazioni
hotkeys
khotkeys
Dovrebbero gestire i tasti speciali (hot keys).
xmodmapEnnesimo programa, simile a loadkeys, ma per X. Non compatibile con evdev, il nuovo driver tastiera di X.

La/Tex Su
File Descrizione
latex filename Compila filename.tex in filename.dvi.
pdflatex filename Compila filename.tex in filename.pdf.
dvips filename Converte filename.dvi in filename.ps.
sudo texhash Aggiorna la tabella (hash) dei package installati.
fmtutil --all Ricrea tutti i format files. Serve ad esempio se installi una nuova lingua. Prima però bisogna modificare il language.dat; e in Debian non puoi farlo direttamente (vedi language-update).
sudo language-update In Debian, costruisce language.dat a partire dai files in /etc/texmf/language.d. Dopo occorerà richiamare fmtutil --all.
texconfig Utility di configurazione la/tex (in Debian limitata ma comunque utile)