SIMULATORI · LINUX CLI · IMPARA LA SHELL

Linux CLI nel browser

Una shell Bash simulata scritta in JavaScript puro, con filesystem virtuale in memoria e ~35 comandi reali (ls, cd, cat, grep, find, pipe, redirect, chmod, ps, ecc.). Boot istantaneo, ~30 KB. Impara la riga di comando con 15 lezioni pratiche a lato di una shell funzionante. Nessun emulatore, nessun kernel — solo i comandi come li digiteresti su Linux vero.

Linux Shell Simulator — boot istantaneo. Clicca dentro il terminale e digita comandi.
15 lezioni pratiche

Clicca su una lezione per espanderla. Digita i comandi nel terminale a sinistra.

01. Navigazione
Il tuo primo comando: pwd — mostra dove sei ora nel filesystem.
Poi ls per listare i file, ls -la per vederli tutti inclusi nascosti.
Cambia cartella con cd /etc, torna alla home con cd ~.
Prova:
$ pwd
$ ls
$ ls -la
$ cd /etc
$ ls
$ cd ~
02. Vedere file
cat file.txt mostra tutto il contenuto.
less file lo apre in pager (spazio scroll, q per uscire).
head -20 file prime 20 righe, tail -20 file ultime 20.
Prova:
$ cat /etc/hostname
$ less /etc/passwd
$ head /etc/passwd
$ tail /etc/passwd
03. Creare file
touch nuovo.txt crea file vuoto.
echo "ciao" > file.txt scrive stringa (sovrascrive).
echo "riga2" >> file.txt appende in coda.
mkdir cartella crea directory.
Prova:
$ touch prova.txt
$ echo "hello" > prova.txt
$ cat prova.txt
$ mkdir nuova
$ ls
04. Copiare / spostare / rimuovere
cp origine destinazione, cp -r per directory intere.
mv vecchio nuovo sposta o rinomina.
rm file cancella, rm -rf cartella ricorsivo (attenzione!).
Prova:
$ cp prova.txt copia.txt
$ ls
$ mv copia.txt copia2.txt
$ rm copia2.txt
$ ls
05. Permessi
Ogni file ha 3 permessi (r=read w=write x=execute) per 3 categorie (user/group/other).
ls -l mostra -rwxr--r--.
chmod 755 file = rwx-r-x-r-x.
chmod +x script.sh aggiunge eseguibile.
Prova:
$ ls -l
$ chmod 600 prova.txt
$ ls -l prova.txt
$ chmod +x prova.txt
$ ls -l prova.txt
06. Ricerca file
find /path -name "*.txt" cerca per nome.
find / -size +10M file più grandi di 10 MB.
which comando dove sta l'eseguibile.
locate parola (usa un database indicizzato).
Prova:
$ find / -name "hostname" 2>/dev/null
$ which ls
$ which sh
07. grep
grep "parola" file cerca stringa.
grep -r "parola" . ricerca ricorsiva.
grep -i case-insensitive.
grep -v inverte (mostra righe che NON contengono).
Prova:
$ grep root /etc/passwd
$ grep -c "^" /etc/passwd
$ grep -i BASH /etc/passwd
08. Pipe |
Il vero superpotere Unix: combinare comandi.
ls -la | grep txt filtra output di ls.
cat file | wc -l conta le righe.
ps aux | grep sh trova processi shell.
Prova:
$ ls / | wc -l
$ cat /etc/passwd | grep root
$ ls -la | head -5
09. Redirect > < >>
> sovrascrive output in file.
>> appende senza cancellare.
< legge input da file.
2>/dev/null scarta gli errori.
cmd > out.txt 2>&1 tutto in un file.
Prova:
$ ls / > listato.txt
$ cat listato.txt
$ echo "extra" >> listato.txt
$ wc -l < listato.txt
10. Processi
ps aux tutti i processi.
top monitor live (q per uscire).
kill 1234 termina processo PID 1234.
kill -9 1234 forzato (SIGKILL).
jobs, bg, fg gestione background.
Prova:
$ ps
$ ps aux | head
$ ps aux | wc -l
11. Utenti e sudo
whoami chi sono.
id UID + GID + gruppi.
su - user diventa un altro utente.
sudo cmd esegue come root.
who chi è loggato.
Prova:
$ whoami
$ id
$ who
12. Sistema
uname -a info kernel/CPU.
df -h spazio dischi.
du -sh cartella quanto occupa.
free -h RAM libera.
uptime da quanto acceso.
Prova:
$ uname -a
$ df -h
$ free
$ uptime
13. Rete
ip addr interfacce di rete.
ping host connettività ICMP.
curl url scarica pagina web.
wget url download file.
netstat -tlnp porte in ascolto.
Prova:
$ ip addr
$ cat /etc/resolv.conf
14. Compressione
tar -cvf archivio.tar files/ crea tar.
tar -xvf archivio.tar estrae.
tar -czvf archivio.tar.gz files/ tar+gzip.
zip -r out.zip cartella/, unzip file.zip.
Prova:
$ tar -cvf mio.tar /etc/hostname
$ tar -tvf mio.tar
$ rm mio.tar
15. Editor testuali
nano file.txt apre editor.
Ctrl+O salva, Ctrl+X esce.
Ctrl+K taglia riga, Ctrl+U incolla.
Per vim: vi file, i insert, Esc+:wq salva+esci.
Prova:
$ echo "test editors"
Consigli shell
  • Tab completa automaticamente nomi file e comandi
  • / scorri la history dei comandi
  • Ctrl+R ricerca inversa nella history
  • Ctrl+C interrompe un comando in esecuzione
  • man comando mostra il manuale (q per uscire)
Nota legale — codice originale, zero dipendenze esterne

Questa è una simulazione di shell Bash scritta da zero in JavaScript puro da Alessandro Barone per questo sito. Filesystem virtuale in memoria, ~35 comandi reali. Nessun emulatore, nessun kernel, nessuna ROM: nulla di codice proprietario di terze parti. Perfetto per imparare la CLI senza rischio di rompere niente sul tuo sistema reale.