Guida introduttiva a Linux e Bash
Questa esercitazione consentirà a coloro che non hanno familiarità con Linux di iniziare a installare e aggiornare i pacchetti usando la distribuzione Ubuntu di Linux installata per impostazione predefinita usando WSL, nonché l'uso di alcuni comandi di base con la riga di comando Bash.
È possibile installare e aggiornare i programmi software direttamente dalla riga di comando usando la gestione pacchetti preferita per la distribuzione in esecuzione.
In Ubuntu, ad esempio, prima di tutto è necessario aggiornare l'elenco di software disponibili eseguendo "sudo apt update". È quindi possibile ottenere direttamente il software usando il comando "sudo apt-get install" seguito dal nome del programma che si vuole installare:
sudo apt-get install <app_name>
Per aggiornare i programmi già installati, è possibile eseguire:
sudo apt update && sudo apt upgrade
Suggerimento
Le diverse distribuzioni di Linux hanno spesso gestori di pacchetti diversi e richiedono l'uso di un comando di installazione specifico per il gestore di pacchetto associato. Ad esempio, il gestore di pacchetti principale per Arch Linux è denominato pacman e il comando di installazione è sudo pacman -S <app_name>
. Il gestore di pacchetti principale per OpenSuse è denominato Zypper e il comando di installazione è sudo zypper install <app_name>
. Il gestore di pacchetti principale per Alpine è denominato apk e il comando di installazione è sudo apk add <app_name>
. I due gestori di pacchetti principali per le distribuzioni di Red Hat, ad esempio CentOS, sono YUM e RPM e il comando di installazione può essere sudo yum install <app_name>
o sudo rpo -i <app_name>
. Fare riferimento alla documentazione della distribuzione con cui si sta lavorando per sapere quali sono gli strumenti disponibili per installare e aggiornare il software.
Per visualizzare il percorso della directory attualmente in uso, usare il comando "pwd":
pwd
Per creare una nuova directory, usare il comando “mkdir” seguito dal nome della directory da creare:
mkdir hello_world
Per modificare le directory, usare il comando "cd" seguito dal nome della directory a cui si vuole passare:
cd hello_world
Per visualizzare il contenuto all'interno della directory attualmente in uso, digitare “ls” nella riga di comando:
ls
Per impostazione predefinita, il comando “ls” stampa solo il nome di tutti i file e delle directory. Per ottenere informazioni aggiuntive, come la data dell’ultima modifica di un file o le autorizzazioni per i file, usare il flag "-l":
ls -l
È possibile creare un nuovo file tramite il comando "touch" seguito dal nome del file che si vuole creare:
touch hello_world.txt
È possibile modificare i file usando qualsiasi editor di testo grafico scaricato o l'estensione VS Code Remote – WSL. Per altre informazioni su come iniziare a usare VS Code, vedere qui
Se si preferisce modificare un file direttamente dalla riga di comando, è necessario usare un editor della riga di comando, come vim, emacs o nano. Molte distribuzioni vengono fornite con uno o più di questi programmi installati, ma è sempre possibile installarli seguendo le istruzioni di installazione descritte nella guida sopra riportata.
Per modificare il file con il metodo preferito, è sufficiente eseguire il nome del programma seguito dal nome del file che si vuole modificare:
code hello_world.txt
notepad.exe hello_world.txt
Per visualizzare il contenuto di un file nella riga di comando, usare il comando "cat" seguito dal file che si vuole leggere:
cat hello_world.txt
Una pipe '|' reindirizza l'output di un comando come input in un altro comando. Ad esempio, lhscmd | rhscmd indirizza l'output da lhscmd a rhscmd. Le pipe possono essere usate in diversi modi per eseguire rapidamente le attività tramite la riga di comando. Di seguito sono riportati alcuni semplici esempi dell’utilizzo delle pipe.
Si supponga di voler ordinare rapidamente i contenuti di un file. Prendendo l'esempio fruits.txt che segue:
cat fruits.txt
Orange
Banana
Apple
Pear
Plum
Kiwi
Strawberry
Peach
È possibile ordinare rapidamente l'elenco usando una pipe:
$ cat fruits.txt | sort
Apple
Banana
Kiwi
Orange
Peach
Pear
Plum
Strawberry
Per impostazione predefinita, l'output del comando “cat” viene inviato all'output standard; tuttavia, "|" consente di reindirizzare l'output come input a un altro comando, “sort”.
Un altro caso d'uso è la ricerca. È possibile usare "grep" come comando utile a cercare un input per una determinata stringa di ricerca.
cat fruits.txt | grep P
Pear
Plum
Peach
È inoltre possibile usare operatori di reindirizzamento come ">" per passare l'output a un file o a un flusso. Ad esempio, se si vuole creare un nuovo file .txt con il contenuto ordinato di fruit.txt:
cat fruits.txt | sort > sorted_fruit.txt
$ cat sorted_fruit.txt
Apple
Banana
Kiwi
Orange
Peach
Pear
Plum
Strawberry
Per impostazione predefinita, l'output del comando di ordinamento viene inviato all'output standard; tuttavia, l'operatore “>” consente di reindirizzare l'output in un nuovo file denominato sorted_fruits.txt.
È possibile usare pipe e operatori di reindirizzamento in molti modi interessanti per completare le attività in modo più efficiente direttamente dalla riga di comando.
Feedback su Windows Subsystem for Linux
Windows Subsystem for Linux è un progetto di open source. Selezionare un collegamento per fornire feedback: