I seguenti comandi Linux one-liner sono già stati condivisi nei modelli di immagine nei nostri social network e professionali. Questi comandi sono solo comandi a riga singola che semplificano e migliorano la vita della tua riga di comando. Ho deciso di raccogliere tutti i comandi che abbiamo condiviso nelle nostre pagine di social network, metterli tutti insieme in un unico articolo e pubblicarlo alla fine di ogni mese. Inoltre, ho incluso altri suggerimenti e trucchi e risorse correlate per imparare cose su Linux. Alcuni dei comandi forniti di seguito sono raccolti da Arch wiki, /r/linux, Askubuntu e Stack Overflow. Tutto il merito va alla comunità. E alcuni sono i miei risultati dall'esperienza quotidiana. Questa è la prima parte della serie. Pubblicheremo le parti successive a fine mese.
Alcuni comandi Linux casuali in una riga
Questi comandi sono principalmente per i principianti. Tutti i comandi sono dati in ordine sparso. Se ci sono errori di battitura, errori nei comandi, fammi sapere nella sezione commenti qui sotto. Li controllerò e li aggiornerò al più presto.
1. Apri pagine man casuali
Ti senti annoiato al lavoro? Apri qualsiasi pagina man a caso e inizia a leggerla. È buono per ammazzare il tuo tempo noioso.
$ apropos . | shuf -n 1 | awk '{print$1}' | xargs man
Per saperne di più su Apropos, controlla il seguente link.
- Come richiamare facilmente i comandi Linux dimenticati
2. Visualizza le informazioni su una distribuzione Linux
Per mostrare tutte le informazioni disponibili sulla tua attuale distribuzione, gestione dei pacchetti e dettagli di base, esegui:
$ echo /etc/*_ver* /etc/*-rel*; cat /etc/*_ver* /etc/*-rel*
Esempio di output dal desktop di Ubuntu 18.04:
/etc/debian_version /etc/lsb-release /etc/os-release buster/sid DISTRIB_ID=Ubuntu DISTRIB_RELEASE=18.04 DISTRIB_CODENAME=bionic DISTRIB_DESCRIPTION="Ubuntu 18.04.3 LTS" NAME="Ubuntu" VERSION="18.04.3 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.3 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=bionic UBUNTU_CODENAME=bionic
3. Ricevi una notifica quando un comando è completato
Per ricevere una notifica al completamento di un comando, aggiungi la riga seguente alla fine del comando. È utile per monitorare i comandi che richiedono molto tempo per essere completati.
;notify-send done
Esempio:
$ ls -l ;notify-send done
Strumenti simili:
- Ricevi una notifica al termine di un'attività terminale
- Undistract-me:ricevi una notifica quando vengono completati i comandi del terminale a lunga esecuzione
4. Trova file più grandi della dimensione X
Per trovare file più grandi della dimensione X, ad esempio 10 MB, e ordinarli per dimensione, esegui:
$ find . -size +10M -type f -print0 | xargs -0 ls -Ssh | sort -z
Possiamo anche trovare file più piccoli della dimensione X come descritto nel link sottostante.
- Come trovare file più grandi o più piccoli di X in Linux
5. Esegui i comandi Linux in modo non interattivo
Per eseguire i comandi Linux in modo non interattivo, usa il comando "yes" come di seguito.
$ yes | sudo apt install vim
Non richiede l'intervento dell'utente. Per dirla semplicemente, non è necessario digitare "yes" o "y" per completare il comando dato. Potrebbe essere utile negli script. È anche pericoloso . Potresti causare accidentalmente dei danni durante l'eliminazione di file o directory. Fai attenzione quando usi il comando "sì".
6. Richiama l'ennesimo comando dalla cronologia
Possiamo richiamare "N"esimo comando dalla cronologia BASH senza eseguirlo. Ad esempio, il comando seguente visualizzerà il dodicesimo comando dalla cronologia, ma non lo eseguirà.
$ !12:p
Lettura correlata:
- 5 modi per ripetere l'ultimo comando in Linux
- Applica tag ai comandi Linux per recuperarli facilmente dalla cronologia
7. Impara la gerarchia del file system Unix/Linux
Per informazioni sulla gerarchia del file system Unix/Linux, eseguire:
$ man hier
8. Scopri cosa farà un comando
Se non sai cosa farà un particolare comando, puoi utilizzare il servizio web Explainshell.
- ExplainShell:scopri cosa fa ogni parte di un comando Linux
Explainshell scompone i comandi lunghi/confusi e mostra istantaneamente cosa farà esattamente ogni parte di comando. Questo è un sito consigliato ai neofiti.
9. Come utilizzare Terminale se il tasto INVIO non funziona
Per utilizzare il Terminale su un sistema in cui il tasto INVIO non funziona, utilizzare le seguenti scorciatoie da tastiera:
- CTRL+j o CTRL+m
10. Trova collegamenti simbolici interrotti
Per trovare tutti i collegamenti simbolici non funzionanti nel tuo sistema, esegui:
$ find . -type l ! -exec test -e {} \; -print
Lettura consigliata:
- Spiegazione di Soft Link e Hard Link in Linux con esempi
11. Monitoraggio della velocità della CPU
Per monitorare la velocità della CPU in tempo reale, esegui:
$ watch grep \"cpu MHz\" /proc/cpuinfo
Premi CTRL+c per interrompere il monitoraggio.
Risorse correlate:
- Come visualizzare l'utilizzo della CPU dalla riga di comando
- Come visualizzare la temperatura della CPU su Linux
- Hegemon:un'applicazione di monitoraggio del sistema modulare scritta nella ruggine
- CPU Power Manager:controlla e gestisci la frequenza della CPU in Linux
12. Trova la data di installazione
Per trovare l'installazione e la data esatte del tuo sistema operativo Linux , usa i seguenti comandi:
Arch Linux:
$ head -n1 /var/log/pacman.log
Se i log sono già stati eliminati, utilizza i seguenti comandi come root utente.
# fs=$(df / | tail -1 | cut -f1 -d' ') && tune2fs -l $fs | grep created
Oppure,
# tune2fs -l /dev/sda1 | grep 'Filesystem created:'
Su sistemi basati su RPM come Fedora, RHEL e suoi cloni come CentOS, Scientific Linux, Oracle Linux:
$ sudo rpm -qi basesystem
Oppure,
$ sudo rpm -qi basesystem | grep Install
13. Trova i comandi più utilizzati
Per trovare i comandi più utilizzati sul tuo comando Linux, esegui:
$ history | awk '{print $2}' | sort|uniq -c|sort -nr|head -15
Questo comando visualizzerà i primi 15 comandi più utilizzati.
Altri esempi nel link sottostante.
- Come trovare i comandi più utilizzati su Linux
14. Trova l'ultima ora di sonno
Trova quando è stata l'ultima volta che il tuo sistema è andato in standby:
$ journalctl -u sleep.target
Risorse correlate:
- Come scoprire chi ha riavviato il sistema Linux
- Come monitorare l'attività degli utenti in Linux
15. Abilita e avvia un servizio
Per abilitare e avviare un servizio, ad esempio docker, con un solo comando:
# systemctl enable --now docker
Di solito, abilito e avvio un servizio come di seguito fino a quando non ho conosciuto questo one-liner.
# systemctl enable docker
# systemctl start docker
16. Differenza tra "&&" e ";" operatori tra i comandi
Il "&&" l'operatore esegue il secondo comando solo se il primo comando ha avuto successo.
Esempio:
$ sudo sh -c 'apt-get update && apt-get upgrade'
Nel caso precedente, il secondo comando (apt-get upgrade) verrà eseguito solo se il primo comando ha avuto successo. In caso contrario, non verrà eseguito.
Il ";" l'operatore esegue il secondo comando indipendentemente dal fatto che il primo comando abbia avuto successo o meno.
Esempio:
$ sudo sh -c 'apt-get update ; apt-get upgrade'
Nel caso precedente, il secondo comando (apt-get upgrade) verrà eseguito anche se il primo comando non riesce.
16. Monitoraggio dei messaggi del kernel
Per monitorare i messaggi del kernel in tempo reale, esegui:
$ dmesg -wx
Per interrompere il monitoraggio, premi CTRL+c .
Controlla lo strumento Netdata per monitorare tutto in un sistema Linux.
- Installa lo strumento di monitoraggio delle prestazioni di NetData su Linux
17. Copia tutto tranne un file o una directory
$ rsync -avz --exclude 'ostechnix' dir1/ dir2/
Il comando precedente copierà tutto da dir1 a dir2, eccetto "otechnix". L'"otechnix" può essere un file o una cartella.
Risorse simili:
- Come escludere directory specifiche dalla copia in Linux
- Come rimuovere tutti i file in una cartella tranne un file specifico in Linux
- Come escludere file di determinate dimensioni dalla copia in Linux
- Come trovare e copiare determinati tipi di file da una directory all'altra in Linux
18. Verifica lo stato del servizio
Per verificare se un determinato servizio è abilitato o meno all'avvio, utilizzare:
$ systemctl is-enabled bluetooth-service
19. Elimina le righe duplicate nei file
Possiamo eliminare tutte le righe duplicate consecutive in un file, ad esempio ostechnix.txt, usando il comando:
$ sed '$!N; /^\(.*\)\n\1$/!P; D' ostechnix.txt
Questo comando cancellerà tutte le righe duplicate consecutive dal file ostechnix.txt.
Lettura correlata:
- Come trovare ed eliminare file duplicati in Linux
20. Elenca la risoluzione dello schermo
Per elencare tutte le risoluzioni supportate dalla tua X, usa il comando xrandr come di seguito:
$ xrandr
Per modificare al volo la risoluzione di X:
$ xrandr -s 1024x760
Possiamo anche regolare la luminosità del monitor usando il comando xrandr. Maggiori dettagli sono al seguente link.
- Come regolare la luminosità del monitor dalla riga di comando in Linux
21. Visualizza i tassi di cambio delle criptovalute
Per visualizzare tutti i tassi di cambio delle criptovalute nel Terminale, esegui:
$ curl rate.sx
Per visualizzare un tasso di valuta specifico, ad esempio BTC , esegui:
$ curl rate.sx/btc
22. Verifica la compatibilità della tua CPU
Per verificare la compatibilità della tua CPU, ad esempio 32 bit o 64 bit, esegui:
$ lscpu | grep mode
Vuoi sapere se il tuo sistema è a 32 o 64 bit? Fare riferimento alla seguente guida.
- Come verificare se un sistema Linux è a 32 o 64 bit
23. Copia o esegui il backup dei file rapidamente
Per copiare o eseguire rapidamente il backup di un file, utilizzare questo comando:
$ cp ostechnix.txt{,.bak}
Questo comando copierà il file denominato "otechnix.txt" in un file denominato "ostechnix.txt.bak". Questo può essere utile per eseguire backup dei file di configurazione prima di modificarli.
24. Crea file di autorizzazioni specifiche
Per creare al volo file con permessi specifici, esegui:
$ install -b -m 777 /dev/null file.txt
Qui, -b flag viene utilizzato per eseguire il backup del file se esiste già.
Lettura correlata:
- Come copiare file e modificare contemporaneamente la proprietà e le autorizzazioni
25. Giocare a Tron multiplayer nel tuo Terminale
$ ssh sshtron.zachlatta.com
Usa W , A , S , D chiavi per il movimento. È utile per ammazzare il tuo tempo noioso.
26. Visualizza una sequenza di numeri nel Terminale
$ echo {01..10}
Questo comando visualizzerà i numeri da 01 a 10.
27. Novità su Arch Linux su Terminal
Per visualizzare le ultime notizie su Arch Linux nel tuo terminale, usa w3m browser di testo come di seguito:
$ w3m https://www.archlinux.org/ | sed -n "/Latest News/,/Older News/p" | head -n -1
Assicurati di aver installato il browser di testo w3m. w3m è disponibile nei repository predefiniti della maggior parte delle distribuzioni Linux.
28. Crea file crittografati (protetti da password) utilizzando Vim
$ vim -x ostechnix.txt
Immettere due volte la chiave di crittografia.
Per rimuovere la password, apri il file usando vim:
$ vim ostechnix.txt
E digita:
:set key=
Infine digita :wq per salvare e chiudere il file.
Usa anche l'utilità CryptoGo per proteggere i file con password.
- CryptoGo:un modo semplice per crittografare e proteggere con password i tuoi file
29. Guarda l'episodio ASCII di Star Wars IV nel Terminal
$ telnet towel.blinkenlights.nl
Tieni presente che non puoi mettere in pausa, riavvolgere una volta iniziato il film. Preparati a guardare l'intero episodio in una sola seduta.
Ecco un altro link per guardare Star Wars:
$ nc towel.blinkenlights.nl 23
30. Elenca prima i file e le directory nascosti
$ ls -alv
31. Trova ed elimina un tipo specifico di file
Per trovare ed eliminare tutti i file di un determinato tipo, ad esempio "PDF" , esegui:
$ find . -name '*.pdf' | xargs rm -v
Ricontrolla prima di eseguire questo comando. Potresti eseguirlo accidentalmente nella directory sbagliata ed eliminare tutti i dati.
32. Visualizza l'utilizzo del disco in un formato leggibile dall'uomo
Visualizza l'utilizzo del disco di tutti i file e le directory in un formato leggibile dall'uomo:
$ du -ah
Visualizza solo l'utilizzo totale del disco (riepilogo) della directory corrente:
$ du -sh
33. Come usare l'editor Vim se il tasto ESC è rotto
Per utilizzare vim editor su un sistema in cui ESC il tasto non funziona, usa la seguente scorciatoia da tastiera:
- CTRL+[
34. Reimposta e cancella contemporaneamente tutti i caratteri nel Terminale
Per reimpostare e cancellare tutti i caratteri inseriti alla richiesta della password Unix, premi:
- CTRL+ALT+u
Prima di conoscere questo suggerimento, ho premuto ripetutamente il tasto BACKSPACE per cancellare i caratteri.
35. Elenca i pacchetti aggiornabili su sistemi basati su DEB
Per visualizzare l'elenco dei pacchetti da aggiornare su sistemi basati su Debian, utilizzare:
$ apt-get list --upgradable
36. Trova il tempo di montaggio del filesystem "ext"
Per scoprire quando è stato montato l'ultima volta un filesystem "ext", esegui:
$ sudo tune2fs -l /dev/sdaX
Dove "x" è il numero di partizione come sda1, sda2
Esempio:
$ sudo tune2fs -l /dev/sda1
Oppure,
$ sudo tune2fs -l /dev/sda1 | grep "Last mount time"
Puoi anche usare questo comando per controllare quante volte il file system è stato montato e quando è stato creato il file system.
37. Utili scorciatoie BASH
Ecco alcuni utili tasti di scelta rapida BASH.
- CTRL+r :Cerca nella cronologia dei comandi
- CTRL+l :Cancella lo schermo del Terminale. (Ecco la lettera L )
- CTRL+c :Annulla il comando in esecuzione.
- CTRL+z :Sospende il comando in esecuzione.
- CTRL+u :Elimina l'intera riga prima del cursore.
- CTRL+k :Elimina l'intera riga dopo il cursore.
- CTRL+t :scambia gli ultimi due caratteri prima del cursore. utile per correggere i comandi digitati in modo errato.
- CTRL+d :Chiudi il Terminale.
Altre scorciatoie Bash sono fornite nella seguente guida.
- L'elenco delle utili scorciatoie da tastiera di Bash
Questo è tutto per la prima parte. Leggi la seconda parte di questa serie nel link riportato di seguito.
- Alcuni comandi Linux casuali in una riga [Parte 2]