Ricerca nel sito web

20 comandi del terminale da conoscere per i nuovi utenti Linux


Quindi, hai intenzione di passare da Windows a Linux o sei recentemente passato a Linux? Ops! Cosa sto chiedendo? Altrimenti perché saresti qui?

Nella mia precedente esperienza da principiante, i comandi e i terminali di Linux erano piuttosto intimidatori. Ero preoccupato per i comandi e mi chiedevo fino a che punto dovevo ricordarli e memorizzarli per diventare abile e pienamente funzionante con Linux.

Indubbiamente, la documentazione in linea, i libri su Linux, le pagine man e la comunità degli utenti hanno fornito un aiuto significativo.

Tuttavia, credo fermamente che dovrebbe esserci un articolo che presenti i comandi Linux di base in un linguaggio facile da imparare e da comprendere.

Queste motivazioni mi hanno ispirato a padroneggiare Linux e renderlo più user-friendly. Questo articolo è un passo verso questo obiettivo”.

1. ls Comando

Il comando 'ls' sta per 'Elenca contenuto directory', che serve per visualizzare il contenuto della cartella, siano essi file o sottocartelle, da cui proviene il comando eseguito.

ls

Il comando "ls -l" elenca il contenuto della cartella in un formato di elenco lungo e dettagliato.

ls -l

Il comando "ls -a" elenca il contenuto di una cartella, inclusi i file nascosti che iniziano con '.'.

ls -a

In Linux, un nome file che inizia con '.' è considerato nascosto. In Linux, ogni file, cartella, dispositivo o comando viene trattato come un file.

Il risultato del comando ls -l è:

  • Tipo file: il primo carattere rappresenta il tipo di file ('-' per un file normale, 'd' per una directory, 'l' per un collegamento simbolico, ecc.).
  • Autorizzazioni: i successivi nove caratteri rappresentano le autorizzazioni del file per il proprietario, il gruppo e altri. Questi caratteri possono includere 'r' per la lettura, 'w' per la scrittura e 'x' per i permessi di esecuzione.
  • Numero di collegamenti: indica il numero di collegamenti reali che puntano al file o alla directory.
  • Proprietario e gruppo: specifica l'utente (proprietario) e il gruppo associato al file o alla directory.
  • Dimensione file: mostra la dimensione del file in byte.
  • Ora di modifica: visualizza la data e l'ora dell'ultima modifica del file o della directory.
  • Nome file o directory: il nome effettivo del file o della directory.

Per ulteriori esempi di comandi "ls" leggi la nostra serie di articoli:

2. Comando lsblk

Il comando "lsblk", abbreviazione di "List Block Devices", visualizza i dispositivi a blocchi in base ai nomi assegnati (esclusa la RAM) in un formato ad albero sull'output standard.

lsblk

Il comando "lsblk -l" elenca i dispositivi a blocchi in una struttura "list" invece che ad albero.

lsblk -l

lsblk è un modo molto utile e semplice per identificare il nome del nuovo dispositivo USB che hai appena collegato, soprattutto quando devi lavorare con dischi o blocchi nel terminale.

3. Comando md5sum

"md5sum" sta per "Calcola e Controlla MD5 Message-Digest". Il checksum MD5 (comunemente indicato come "hash") viene utilizzato per abbinare o verificare l'integrità dei file che potrebbero essere cambiati a causa di un trasferimento file errato, di un errore del disco o di un'interferenza non dannosa.

md5sum teamviewer_linux.deb 

47790ed345a7b7970fc1f2ac50c97002  teamviewer_linux.deb

L'utente può confrontare l'md5sum generato con quello fornito ufficialmente. MD5sum è considerato meno sicuro di sha1sum, di cui parleremo più avanti.

4. comando dd

Il comando dd sta per "Converti e copia un file" e può essere utilizzato per convertire e copiare un file. Molto spesso viene utilizzato per copiare un file ISO (o qualsiasi altro file) su un dispositivo USB (o un'altra posizione), rendendolo adatto alla creazione di una chiavetta USB avviabile.

dd if=debian.iso of=/dev/sdb1 bs=512M; sync

Nota: nell'esempio sopra il dispositivo USB dovrebbe essere sdb1 (dovresti verificarlo utilizzando il comando lsblk, altrimenti sovrascriverai il disco e il sistema operativo), utilizza il comando nome del disco con molta cautela!

Il comando dd richiede un tempo che varia da pochi secondi a diversi minuti nell'esecuzione, a seconda della dimensione e del tipo di file e della velocità di lettura e scrittura della chiavetta Usb.

5. comando uname

Il comando uname sta per (Nome Unix) e stampa informazioni dettagliate sul nome della macchina, sul sistema operativo e sulla versione del kernel.

uname -a

Linux TecMint 6.2.0-39-generic #40~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC 
Thu Nov 16 10:53:04 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

Il risultato del comando uname -a è:

  • Linux“: il nome del kernel della macchina.
  • tecmint“: il nome del nodo della macchina.
  • 6.2.0-39-generic“: la versione del kernel.
  • "22.04.1-Ubuntu SMP": la versione del rilascio del sistema operativo.
  • x86_64“: l'architettura del processore.
  • GNU/Linux“: il nome del sistema operativo.

6. Comando cronologia

Il comando History sta per Registrazione cronologia (eventi), stampa la cronologia di un lungo elenco di comandi eseguiti nel terminale.

history

Nota: premendo 'Ctrl + R' puoi cercare comandi eseguiti in precedenza, consentendo di completare il comando utilizzando la funzione di completamento automatico.

(reverse-i-search)`if': ifconfig

Per ulteriori esempi di comandi cronologia, fai riferimento alla nostra serie di articoli:

7. Comando sudo

Il comando "sudo" (superuser do) consente a un utente autorizzato di eseguire un comando come superutente o un altro utente, come specificato dalla politica di sicurezza nell'elenco sudoers.

sudo apt update

Nota: sudo consente agli utenti di prendere in prestito i privilegi di superutente, mentre un comando simile "su" consente agli utenti di accedere come superutente. Sudo è più sicuro di su.

Non è consigliabile utilizzare sudo o su per il normale utilizzo quotidiano, in quanto può causare errori gravi se accidentalmente si fa qualcosa di sbagliato, ecco perché un metodo molto un detto popolare nella comunità Linux è:

“To err is human, but to really foul up everything, you need a root password.”

Per ulteriori esempi di comandi sudo, fai riferimento alla nostra serie di articoli:

8. Comando mkdir

La (make directory) crea una nuova directory con un percorso del nome. Tuttavia, se la directory esiste già, verrà restituito un messaggio di errore "impossibile creare una cartella, la cartella esiste già".

Il comando mkdir (make directory) viene utilizzato per creare una nuova directory con un percorso specificato. Tuttavia, se la directory esiste già, verrà restituito un messaggio di errore che indica "impossibile creare una cartella, la cartella esiste già".

mkdir tecmint

Le directory possono essere create solo all'interno di cartelle per le quali l'utente dispone dei permessi di scrittura.

9. toccare Comando

Il comando touch sta per "aggiorna gli orari di accesso e modifica di ciascun FILE all'ora corrente". Il comando "touch" crea il file solo se non esiste. Se il file esiste già, aggiornerà il timestamp ma non il contenuto del file.

touch tecmintfile

Il comando "touch" può essere utilizzato per creare un file in una directory per la quale l'utente ha il permesso scritto, solo se il file non esiste già lì.

10. Comando chmod

Il comando "chmod" sta per "cambia bit modalità file", che altera la modalità file (autorizzazioni) di ciascun file, cartella, script, ecc., in base alla modalità specificata.

Esistono 3 tipi di autorizzazione su un file (cartella o altro, ma per semplificare le cose utilizzeremo file).

Read (r)=4
Write(w)=2
Execute(x)=1

Quindi, se vuoi dare solo il permesso di lettura a un file, gli verrà assegnato il valore "4", per il solo permesso di scrittura, il valore "2" e per solo il permesso di esecuzione, deve essere fornito il valore '1'. Per la lettura e la scrittura bisogna dare il permesso 4+2=‘6‘ e così via.

Ora è necessario impostare l'autorizzazione per 3 tipi di utenti e gruppi di utenti. Il primo è il proprietario, poi il gruppo utenti e infine il mondo.

rwxr-x--x   abc.sh

Qui il permesso di root è rwx (lettura, scrittura ed esecuzione). il gruppo utente a cui appartiene è r-x (solo lettura ed esecuzione, nessun permesso di scrittura) e per il mondo è –x (solo eseguire).

Per modificare la sua autorizzazione e fornire autorizzazioni di lettura, scrittura ed esecuzione al proprietario, al gruppo e al mondo.

chmod 777 abc.sh

solo il permesso di lettura e di scrittura a tutti e tre.

chmod 666 abc.sh

Le operazioni di lettura, scrittura ed esecuzione per il proprietario ed esecuzione solo per il gruppo e mondo.

chmod 711 abc.sh

chmod è uno dei comandi più cruciali che si rivela vantaggioso sia per gli amministratori di sistema che per gli utenti. In un ambiente multiutente o su un server, questo comando è indispensabile, poiché un'impostazione errata dei permessi può rendere inaccessibile un file o garantire l'accesso non autorizzato a singoli individui.

11. comando chown

Il comando chown sta per "cambia proprietario e gruppo del file", che viene utilizzato per modificare il proprietario e/o il gruppo di un file o di una directory.

Di seguito è riportato un esempio di come viene generalmente utilizzato il comando chown.

chown newowner:newgroup filename

Ad esempio, se desideri modificare il proprietario di un file denominato "example.txt" con un utente denominato "tecmint" e un gruppo denominato "utenti<“, il comando sarebbe:

chown tecmint:users example.txt

12. comando apt

Nelle distribuzioni basate su Debian come Ubuntu e Linux Mint, il comando apt sta per (Advanced Package Tool), che viene utilizzato per installare, aggiornare e gestire i pacchetti software su un sistema dalla riga di comando.

sudo apt search wget
sudo apt install wget
sudo apt update

Il comando apt è considerato più avanzato e intelligente rispetto al comando yum o dnf.

13. Comando tar

Il comando tar è un Archivio Tape utile nella creazione di un archivio, in diversi formati di file e nella loro estrazione.

tar -zxvf abc.tar.gz (Remember 'z' for .tar.gz)
tar -jxvf abc.tar.bz2 (Remember 'j' for .tar.bz2)
tar -cvf archieve.tar.gz(.bz2) /path/to/folder/abc

Nota: "tar.gz" significa gzippato. "tar.bz2" è compresso con bzip che utilizza un metodo di compressione migliore ma più lento.

14. comando cal

Il “cal” (Calendario), viene utilizzato per visualizzare il calendario del mese corrente o di qualsiasi altro mese di qualsiasi anno che avanza o è trascorso.

cal 

Mostra il calendario dell'anno 1835 per febbraio, che è già trascorso.

cal 02 1835

Mostra il calendario dell'anno 2145 per luglio, che avanzerà

cal 07 2145

Nota: non è necessario riportare indietro il calendario di 50 anni, né eseguire complessi calcoli matematici per determinare il giorno in cui sei nato o il giorno in cui cadrà il tuo prossimo compleanno.

15. data Comando

Il comando date viene utilizzato per visualizzare la data e l'ora correnti. Può essere utilizzato anche per impostare la data e l'ora del sistema.

Per visualizzare la data e l'ora correnti.

date

Per visualizzare la data corrente nel formato “AAAA-MM-GG”.

date +"%Y-%m-%d"

Per impostare la data e l'ora del sistema.

sudo date MMDDhhmm[[CC]YY][.ss]

Il comando precedente consente di impostare la data e l'ora del sistema. Sostituisci MM, GG, hh, mm, CC, AA e ss con i valori desiderati rispettivamente per mese, giorno, ora, minuto, secolo, anno e secondo.

Nota: il comando date è molto utile negli script, soprattutto per le operazioni basate su ora e data. Inoltre, cambiare la data e l'ora tramite il terminale può farti sentire un vero GEEK! (Ovviamente è necessario avere i permessi di root per eseguire questa operazione, poiché comporta una modifica a livello di sistema).

16. Comando gatto

Il comando cat sta per (Concatenazione), che significa (unire) due o più file semplici e/o stampare il contenuto di un file sull'output standard.

Per visualizzare il contenuto di un file.

cat filename

Concatenare più file significa che il seguente comando concatena il contenuto di file1 e file2 e visualizza il risultato nel terminale.

cat file1 file2

Il contenuto di a.txt, b.txt, c.txt e d.txt verrà combinato e aggiunto alla fine del file abcd.txt.

cat a.txt b.txt c.txt d.txt >> abcd.txt

gatto abcd.txt

Nota: ">> " e "> " sono chiamati simboli di aggiunta. Vengono utilizzati per aggiungere l'output a un file e non all'output standard.

Il simbolo “> ” cancellerà un file già esistente e creerà un nuovo file quindi per motivi di sicurezza si consiglia di utilizzare “>> ” che scriverà l'output senza sovrascrivere o eliminare il file.

Prima di procedere oltre, devo informarti sui caratteri jolly (saresti a conoscenza delle voci con caratteri jolly, nella maggior parte degli spettacoli televisivi) I caratteri jolly sono una funzionalità della shell che rende la riga di comando molto più potente di qualsiasi file GUI manager.

Vedi, se vuoi selezionare un grosso gruppo di file in un file manager grafico, di solito devi selezionarli con il mouse. Questo può sembrare semplice, ma in alcuni casi può essere molto frustrante.

Ad esempio, supponiamo di avere una directory con un'enorme quantità di tutti i tipi di file e sottodirectory e di decidere di spostare tutti i file HTML che hanno la parola "Linux" da qualche parte nel mezzo nomi, da quella grande directory in un'altra directory.

Qual è un modo semplice per farlo? Se la directory contiene un'enorme quantità di file HTML con nomi diversi, il tuo compito è tutt'altro che semplice!

Nella riga di comando di Linux questa attività è semplice da eseguire quanto spostare un solo file HTML, ed è così semplice grazie ai caratteri jolly della shell. Si tratta di caratteri speciali che consentono di selezionare nomi di file che corrispondono a determinati modelli di caratteri.

Questo ti aiuta a selezionare anche un grande gruppo di file digitando solo pochi caratteri e, nella maggior parte dei casi, è più semplice che selezionare i file con il mouse.

Ecco un elenco dei caratteri jolly più comunemente utilizzati:

Wildcard			Matches
   *			zero or more characters
   ?			exactly one character
[abcde]			exactly one character listed
 [a-e]			exactly one character in the given range
[!abcde]		any character that is not listed
 [!a-e]			any character that is not in the given range
{debian,linux}		exactly one entire word in the options given

Il ! non è un simbolo e il contrario della stringa allegata a '!' è vero.

17. Comando cp

Il comando cp sta per (copia), copia un file da una posizione a un'altra posizione.

cp /home/user/Downloads abc.tar.gz /home/user/Desktop

Nota: cp è uno dei comandi più comunemente utilizzati nello scripting di shell e può essere utilizzato con caratteri jolly (descritti nel blocco precedente), per file personalizzati e desiderati copiare.

18. Comando mv

Il comando mv sposta un file da una posizione a un'altra.

mv /home/user/Downloads abc.tar.gz /home/user/Desktop

Nota: il comando mv può essere utilizzato con caratteri jolly. mv deve essere utilizzato con cautela, poiché lo spostamento di file di sistema/non autorizzati può portare alla sicurezza e al guasto del sistema.

19. Comando pwd

Il comando pwd (stampa directory di lavoro), stampa la directory di lavoro corrente con il percorso completo dal terminale.

pwd 

/home/user/Desktop

Nota: il comando pwd non verrà utilizzato frequentemente negli script, ma è un vero toccasana per un principiante che si perde nel terminale durante la prima connessione con Linux. (Linux è più comunemente indicato come nux o nix).

20. comando cd

Infine, il comando cd utilizzato di frequente sta per (cambia directory), che cambia la directory di lavoro per eseguire, copiare, spostare, scrivere, leggere, ecc. dal terminale stesso.

cd /home/user/Desktop
pwd

/home/user/Desktop

Nota: il comando cd viene in soccorso quando si passa da una directory all'altra dal terminale. Il "cd ~" cambierà la directory di lavoro nella directory home dell'utente, il che è molto utile se un utente si ritrova perso nel terminale. Il "cd .." cambierà la directory di lavoro nella directory principale della directory di lavoro corrente.

Conclusione

Questi comandi miglioreranno senza dubbio il tuo comfort con Linux. Tuttavia, questa non è la conclusione. Presto introdurrò comandi aggiuntivi che si riveleranno utili per gli "utenti di medio livello". Osserverai una promozione nel tuo stato di livello utente, passando da principiante a utente di livello medio.

Nel prossimo articolo presenterò comandi come "Kill", "ps" e "grep".