Condividi tramite


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.

Installazione e aggiornamento del software

È 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

upgrade_and_update

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.

Utilizzo di file e directory

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

directory-and-file-commands1

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 

directory-and-file-commands2

Uso di pipe e operatori di reindirizzamento

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.