Linux Per Principianti: Terminale Ubuntu

Comandi di base per la gestione del file system



Ho introdotto nell'articolo precedente, consultabile qui, i concetti base relativi al mondo del pinguino. Oggi andiamo a vedere alcune operazioni di base che si possono svolgere mediante linea di comando su un sistema Ubuntu-like.

Che cos'è la linea di comando?

Shellterminale e riga di comando sono termini che indicano un dispositivo a interfaccia testuale. Può servire a svolgere gran parte delle mansioni in un sistema operativo: muoversi attraverso il file system gestirlo, scaricare, installare o rimuovere programmi, per configurare l'hardware, per creare script e molte altre cose.

Fondamentalmente è un modo alternativo alla comune interfaccia grafica per gestire la macchina. Infatti possiamo svolgere esattamente tutte le operazioni che svolgiamo mediante interfaccia grafica utilizzando la linea di comando. 

Tipicamente, un normale terminale Ubuntu si presenta così.

Terminal

Vediamo alcune operazioni che si possono svolgere mediante terminale.

Come avvio il terminale? 

Abbiamo due modi per utilizzare il terminale: avviare la macchina in modalità terminale oppure avviare la shell da interfaccia grafica.

Per avviarlo da interfaccia grafica:

  • Ubuntu 18.04 e successivi: selezionare il menù delle applicazioni e digitare terminale;
  • Rilasci precedenti: selezionare il pulsante Ubuntu e digitare terminale;

Manuale e sintassi dei comandi

Quando ci troviamo a digitare comandi, può capitare che non ci si ricordi la sintassi o la funzione di alcune opzioni che si possono passare. In tal caso ci vengono in soccorso due comandi: man e help.

help

Il comando help è quello atto a ricordarci la sintassi del comando che stiamo utilizzando. Vediamo come si usa.

ls --help è la guida che spiega la sintassi del comando ls;

ls --help | less: consente di visualizzare la guida del comando ls su più pagine video;

man

Il comando man ci mostra le pagine del manuale relativo al comando che vogliamo utilizzare, nel caso in cui esista.

Ci basterà scrivere:

man <comando> dove con <comando> si intende il comando di cui vogliamo consultare la pagina di manuale.

Navigazione attraverso il file system

Dobbiamo prima di tutto capire com'è strutturato il file system in ambiente Ubuntu. In questo ambiente il file system è rappresentato come un albero, la cui radice (root) è il nodo padre di tutti.

ROOT

Mediante linea di comando possiamo anche scorrere in lungo e in largo il nostro file system. Il comando che ci viene in soccorso è cd. Vediamo come funziona.

  • cd Desktop se la directory corrente è home ci porta nella cartella Desktop. Generalmente possiamo sostituire Desktop con il nome di qualsiasi directory purchè sia una sotto-directory di quella in cui ci troviamo. in alternativa ci troviamo obbligati ad utilizzare un path assoluto per raggiungere la cartella;
  • cd .. ci permette di spostarci dalla directory in cui ci troviamo alla directory padre;
  • cd /directory da qualunque cartella ci troviamo ci permette di spostarci nella cartella directory;
  • cd ~ oppure cd porta nella directory home dell'utente;
  • cd - porta nella directory precedente;

Mostrare la cartella corrente

pwd mostra la cartella corrente in cui ci troviamo.

Mostrare il contenuto di una cartella

Nel momento in cui vogliamo comnsultare il contenuto di una cartella, il comando ls ci viene in soccorso. Vediamo alcuni esempi di utilizzo.

  • ls -l mostra il contenuto della cartella in formato lungo;
  • ls -la mostra il contenuto della cartella in formato lungo includendo i file nascosti;
  • ls -S mostra la lista dei file ordinati in base alla dimensione;
  • ls -X mostra la lista dei file ordinati in base alla loro estensione;

Copiare file e directory

In questo caso il comando che giunge in nostro soccorso è il comando cp. Vediamo come si usa.

  • cp file1 cart1 copia il file chiamato file1 nella cartella cart1. Possiamo anche utilizzare i path, assoluti o relativi che siano, di entrambi gli elementi;
  • cp -r cart1 cart2 copia tutto il contenuto della cartella cart1 nella cartella cart2;
  • sudo cp -a cart1 cart2 copia tutta la directory cart1 dentro a cart2 mantenendo gli stessi permessi e le informazioni su data e ora di creazione

Muovere o rinominare file e cartelle

Il comando che utilizziamo è il comando mv.

  • mv vecchio nuovo rinomina il file vecchio in nuovo;
  • mv file1 cart1 muove il file file1 dentro la cartella cart1;

Rimuovere file e cartelle, creare cartelle

Il comando che utilizziamo è rm.

Vediamo come si usa.

  • rm file1 file2 ... rimuove i file file1, file2 e tutti gli altri elencati dopo;
  • rm *.* rimuove tutto il contenuto della directory corrente. Va usato con cautela! Il comando si può modificare scrivendo rm *.estensione rimuovendo tutti i file con estensione .estensione;
  • rm -rf cart1 rimuove tutto il contenuto della cartella cart1;

Nel caso in cui volessimo rimuovere una cartella, purchè vuota, useremo il comando rmdir cartella.

Nel caso in cui volessimo creare una cartella, utilizzeremo il comando mkdir cartella, creando così una directory vuota chiamata cartella.

Visualizzare il contenuto di file

Il comando che ci permette di visualizzare il contenuto di uno o più files è il comando cat. Vediamone alcuni esempi. E' buona norma scrivere esplicitamente l'estensione del file, al fine di evitare ambiguità tra eventuali file con lo stesso nome ma estensione diversa.

  • cat file mostra il contenuto del file denominato file;
  • cat file1 file2 > file3 crea il file file3 che contiene il contenuto di file1 e file2;
  • cat file1 file2 >> file3 aggiunge a file3 il contenuto di file1 e file2;
  • tac file visualizza il contenuto di file ma in ordine inverso;

Se vogliamo visualizzare il contenuto di un file su più pagine video non ricorreremo al comando cat ma al comando more. Il tasto di Invio fa avanzare la visualizzazione riga per riga mentre la barra spaziatrice fa avanzare di pagine video

  • se vogliamo visualizzare il contenuto di un file su più pagine video scriveremo more file;
  • se vogliamo visualizzare il contenuto di una directory su più pagine video scriveremo ls -l | more;

Se invece vogliamo visualizzare il contenuto di file o directory sempre su più pagine video ma con la possibilità di scorrerlo avanti e indietro utilizzeremo il comando less.Per interrompere utilizzare CTRL+Z.

  • less file visualizza il contenuto del file1 in pagine video;
  • ls -l | less visualizza il contenuto della directory corrente in formato lungo su più pagine video; 

Abbiamo dato una panoramica molto generale sui comandi di base di Ubuntu. Più avanti, affrontando altri aspetti del mondo del pinguino, introdurremo nuovi comandi. Per ora, sperimentate gente, sperimentate!wink

 
by Alessio Mungelli Date: 23-02-2020 ubuntu linux terminale linea comando commandline spiegazione principianti dummies file directory gestione visite : 1234  
 
Alessio Mungelli

Alessio Mungelli

Computer Science student at UniTo (University of Turin), Network specializtion, blogger and writer. I am a kind of expert in Java desktop developement with interests in AI and web developement. Unix lover (but not Windows hater). I am interested in Linux scripting. I am very inquisitive and I love learning new stuffs.

 
 
 

Articoli correlati

    Microsoft rilascia il Free Linux Forensics e Rootkit Malware Detection Service FRETA

    Il team di Microsoft Information Systems Audit ha annunciato una nuova iniziativa volta a scoprire le prove forensi di attacchi contro i sistemi Linux, nella speranza di rilevare la presenza…

    Hashmap con Concatenamento: hashing, collisioni e prime funzioni

    Oggi andremo a vedere dei concetti strettamente legati alle hashmap. I concetti che andremo a vedere sono quelli di hashing e collisioni. Hashing L'idea dell'hashing con concatenamento è quella di creare una sorta di array di…

    Hashmap con concatenamento: liste di trabocco

    In questa breve serie di articoli andremo a vedere com'è possibile realizzare in C la struttura dati Hashmap. Nell'implementazione andremo ad usare le liste doppiamente concatenate come strutture dati ausiliarie. Andiamo…

    Linux per Principianti: Guida all'installazione di Ubuntu

    Abbiamo dato precedentemente una panoramica su qualche aspetto di base dei sistemi Unix e in particolar modo Ubuntu. Abbiamo infatti fatto un'introduzione, dopodichè abbiamo parlato di terminale Ubuntu e infine abbiamo parlato…

    Linux per Principianti: I permessi

    Nei precedenti articoli abbiamo fatto una breve introduzione al mondo Unix e nell'articolo successivo abbiamo parlato di comandi base per la gestione del file system. Oggi andremo a parlare di permessi. Come esempio prenderemo sempre…

    Linux per Principianti: Introduzione

    Se hai pensato di migrare da Windows a un sistema operativo Unix, o Linux nello specifico ci sono cose che dovresti sapere. L'obiettivo è quello di dare le informazioni essenziali…

    Java Strutture Dati: Liste Concatenate

    Con il 2020 andiamo ad esaminare un nuovo aspetto della programmazione: le strutture dati. Spesso capita a tutti di utilizzare strutture messe a disposizione dai vari linguaggi di programmazione. L'obiettivo sarà…

    Java Algoritmi di Ordinamento: Selection Sort

    Andiamo oggi ad analizzare in dettaglio un algoritmo di ordinamento non molto efficiente ma piuttosto utilizzato in diversi ambiti. Stiamo parlando del Selection Sort. Vediamo meglio in dettaglio. Intuizione L'idea alla base è quella…

    Java algoritmi di ordinamento: Merge Sort

    Andiamo oggi ad analizzare uno tra i migliori algoritmi di ordinamento: il Merge Sort. Detto anche algoritmo per fusione, fa parte della famiglia dei Divide and Conquer proprio come il Quick Sort. A differenza del…

    Java algoritmi di ordinamento: Quick Sort

    Bentornati in questa nostra panoramica sul mondo Java! Oggi andremo a parlare di un algoritmo di ordinamento tra i più celebri. Il Quick Sort. A differenza del precedentemente trattato Bubble Sort, Quick…

    Java Design Pattern: Prototype Pattern

    Andremo ora a parlare di un pattern creazionale che ci permette di "copiare con classe". Sì, anche se sembra strano, il compito fondamentale di questo pattern è copiare. Sto parlando…

    Wi-Fi 6, il Wi-Fi orientato anche all'IoT

    Nel terzo trimestre del 2019, la Wi-Fi Alliance ha finalmente deciso di rilasciare la nuova versione del protocollo Wi-Fi, innovativo sin dal nome. Infatti, se tutti gli standard precedenti avevano nomi pressochè…