Che tu sia un amministratore di sistema Windows che cerca di espandere le tue competenze in Linux, un nuovo convertito a Linux o qualcuno che sta cercando di trovare un lavoro nell'IT, questa introduzione ad alcuni comandi Linux comuni fa per te. Questi 10 comandi sono quelli che gli amministratori di sistema Linux usano frequentemente, infatti, ne usano almeno otto su base giornaliera. E non importa per quanto tempo usi Linux, utilizzerai sempre questi comandi. Alcuni di voi utenti MS-DOS ne riconosceranno alcuni e, non a caso, hanno la stessa funzione in entrambi i sistemi operativi.
ls
elenca il contenuto della directory
L'elenco (ls
) è equivalente al comando DOS DIR
comando, in quanto elenca file e directory. Se digiti semplicemente ls
a un prompt ($
), vedrai tutti i file non nascosti nella tua directory corrente, che è la tua home directory quando accedi per la prima volta a un sistema Linux. Il ls
comando non ti mostrerà molto nella tua home directory su un nuovo sistema, quindi esploriamo una directory che contiene molti file e directory:/etc
. Il /etc
(et-see ) è la directory in cui risiedono i file di configurazione di un sistema Linux.
$ ls /etc
Sullo schermo viene visualizzato un numero elevato di file (oltre 200). Hai elencato correttamente i contenuti di /etc
directory, ma puoi effettivamente elencare i file in diversi modi. Sopra, ho menzionato i file non nascosti. Nella tua home directory, dove ti trovi ora, probabilmente hai dei file nascosti. I file nascosti in Linux iniziano con un punto (.
). Ad esempio, probabilmente hai un .bash_profile
file lì. Per vederlo, usa i seguenti ls
comando.
$ ls -a
Ora vedrai diversi file che iniziano con un punto. Il -a
interruttore, o opzione, come viene chiamato, ti mostra tutti file, anche nascosti.
man
visualizza le pagine di manuale
Linux has an extensive set of online documentation for your reference. They're referred to as manual pages, as in read the manual. The abbreviated command for referencing this documentation is,
man <command>
e davanti a te appare uno schermo pieno di informazioni.
È facile navigare nelle pagine man. Usa Invio per avanzare di una riga alla volta, il 'b
' per tornare indietro, lo Spazio barra per avanzare di una pagina a schermo intero e 'q
' per uscire dalla pagina man. Ad esempio, guarda la pagina man per ls
comando.
$ man ls
cat
concatena i file
Il cat
command è importante come comando di base perché svolge due funzioni molto importanti:concatenare (unire) file (come suggerisce il nome) e stampare il contenuto di un file sullo schermo. La stampa del contenuto dei file è di gran lunga l'uso più frequente di questo comando. Se vuoi vedere il contenuto di un file, usa il seguente formato:
$ cat <filename>
Ad esempio, puoi digitare quanto segue per visualizzare il contenuto del passwd
del sistema file sullo schermo:
$ cat /etc/passwd
Per usare cat
per i suoi poteri di concatenazione dei file, la forma generale del comando è:
$ cat file1 file2 > file1file2
Ad esempio, per reindirizzare il contenuto di grocerylist.txt
e todo_list.txt
nel Saturday.txt
file:
$ cat grocerylist.txt todo_list.txt > Saturday.txt
Puoi concatenare tutti i file che vuoi in un unico file usando cat
.
[ Download gratuito:cheat sheet dei comandi avanzati di Linux. ]
touch
cambia i timestamp dei file
Il touch
il comando è un altro che ha un duplice scopo. Il suo scopo designato è aggiornare i timestamp sui file. Se elenchi il contenuto di una directory in formato lungo con:
$ ls -l
L'output del comando mostra le autorizzazioni, la proprietà, le dimensioni, la data/ora di creazione o dell'ultimo accesso e il nome del file:
-rw-rw-r--. 1 khess khess 175 Jul 23 19:19 all.txt
-rw-rw-r--. 1 khess khess 61 Jul 23 19:17 new.txt
-rw-rw-r--. 1 khess khess 114 Jul 23 19:09 students.txt
Usa touch
per aggiornare il timestamp dell'ultimo accesso:
$ touch new.txt
$ ls -l
-rw-rw-r--. 1 khess khess 175 Jul 23 19:19 all.txt
-rw-rw-r--. 1 khess khess 61 Jul 26 11:28 new.txt
-rw-rw-r--. 1 khess khess 114 Jul 23 19:09 students.txt
Usando touch
aggiornare l'ora dell'ultimo accesso è in realtà un uso raro di questo comando. L'uso comune di touch
è creare un file vuoto come segnaposto. Alcuni programmi richiedono l'esistenza di un file per funzionare correttamente e questo è un metodo per avviare tale processo. Altrimenti, questo uso offre un modo rapido per creare un file senza aprire un editor di testo e quindi salvare un file vuoto:
$ touch today.txt
$ ls -l
-rw-rw-r--. 1 khess khess 175 Jul 23 19:19 all.txt
-rw-rw-r--. 1 khess khess 61 Jul 26 11:28 new.txt
-rw-rw-r--. 1 khess khess 114 Jul 23 19:09 students.txt
-rw-rw-r--. 1 khess khess 0 Jul 26 11:53 today.txt
Hai creato un nuovo file vuoto, today.txt
.
pwd
stampa la directory di lavoro
Il pwd
command è la bussola del tuo sistema Linux, in quanto ti dice dove ti trovi. Non ha altra funzione che fornirti quel bit di informazioni. Prova quanto segue e vedrai che sei nella tua home directory, che è mostrata nel formato /home/<username>
:$ pwd
/home/khess
Se ti perdi, o semplicemente ti chiedi dove sei nel filesystem, questo è il comando che te lo dirà. Gli utenti Linux lo usano frequentemente prima di modificare o rimuovere file per essere sicuri della loro posizione corrente.
Il pwd
il comando mostra sempre il percorso completo della tua posizione, anche se sei in più directory profonde dalla radice (/
) directory, motivo per cui vedo /home/khess
piuttosto che khess
o /khess
.
cd
cambia directory
Molto strettamente correlato al pwd
il comando è il cd
comando. Il cambio di directory è un'attività frequente su un sistema Linux. Come affermato in precedenza, quando accedi per la prima volta, vieni inserito nella tua home directory. Ogni utente su un sistema Linux ha una home directory. Gli account utente regolari hanno directory personali sotto /home
directory. La tua home directory si trova in /home/<username>
. Per visualizzare tutte le home directory degli utenti, cd
al /home
directory.
$ cd /home
$ ls
Quello che vedi qui dipende dal tuo sistema. Se sei l'unico utente su un sistema personale, vedrai solo la tua home directory. I sistemi di produzione potrebbero avere centinaia di account utente su di essi. Il modo rapido per tornare alla tua home directory, indipendentemente da dove ti trovi nel sistema, è digitare cd
senza argomenti o percorsi di directory:
$ cd
Quindi, se mai ti "perdi" nel sistema e hai bisogno di ripristinare i tuoi cuscinetti, digita cd
e sarai messo al sicuro nella tua home directory. Puoi cd
a quasi tutte le directory del sistema fornendo il percorso completo dopo il cd
comando:
$ cd /usr/bin
Per cambiare la directory in quella sopra la directory corrente, usa l'argomento del doppio punto (punto):
$ cd ..
Ora sei nel /usr
directory. Ricorda che puoi "dimostrare" la tua posizione emettendo il pwd
comando:
$ pwd
/usr
Ci sono momenti in cui non è necessario cd
in una directory particolare. Puoi leggere un file dalla tua posizione attuale se fornisci il percorso completo del file che ti interessa visualizzare. Ad esempio, non è necessario cd
al /usr/bin
directory per emettere il pwd
comando. Lo emetti dalla tua posizione attuale perché è nel tuo percorso.
Il percorso è un argomento più avanzato per un altro articolo, ma tieni presente che non è necessario cd
per fare tutto. Il tempo di cd
è quando lavorerai in una directory specifica per qualche motivo. Altrimenti, puoi fare ciò che devi fare dalla tua home directory. Scoprirai perché cambiare directory può essere una cosa negativa nella prossima sezione.
rm
rimuove file e directory
Il rm
il comando rimuove (elimina) file e directory. Una delle stranezze di Linux che troverai diverso da DOS/Windows è che non è loquace, il che significa che quando rimuovi un file o una directory, non riceverai (per impostazione predefinita) un messaggio del tipo " Sei sicuro?" Semplicemente non è il modo Linux. C'è una soluzione alternativa consigliata per quel comportamento che ti mostrerò più avanti in questa sezione.
Per ora, rimuoviamo today.txt
file che hai creato in precedenza con il touch
comando:
$ rm today.txt
Hai notato che non hai ricevuto alcuna domanda o richiesta? Linux presuppone che tu sappia cosa vuoi fare prima di premere Invio chiave. È un po' sconcertante, vero? Chiedi agli amministratori di sistema Linux se qualche file è mai scomparso durante una delle loro sessioni. Metto soldi su una risposta affermativa e non sono un giocatore d'azzardo. Puoi aggirare questo comportamento non interattivo di alcuni comandi inserendo un -i
interruttore (opzione) dopo il comando. Prova il seguente esempio:
$ touch newfile.txt
$ rm -i newfile.txt
rm: remove regular empty file 'newfile.txt'?
Il -i
rende rm
interattivo. Rispondi con un y
e il file va via. Rispondi con un n
e tieni il file. Per sicurezza, puoi sempre usare -i
cambia con rm
. Non c'è niente di male o di vergogna in questo e sarai felice di averlo fatto ad un certo punto in futuro.
cp
copia file e directory
La copia di file e directory è un'attività molto comune per gli amministratori di sistema Linux. Non c'è un grande segreto per il suo utilizzo e tu emetti semplicemente la copia (cp
), l'origine del file o della directory e la destinazione. Per copiare un file, file.txt
, nel /opt/files
directory, utilizzare:
$ cp file.txt /opt/files
Per copiare un'intera directory e tutto il suo contenuto, incluse le sottodirectory, usa il -R
Opzione (ricorrenza). Copia la directory dei dati nella tua home directory in /opt/files
. Puoi usare sia il -r
o -R
per copiare file ricorsivi:
$ cp -R data /opt/files
Il cp
comando è raro in quanto entrambe le opzioni maiuscole e minuscole per un'azione sono le stesse. Naturalmente, puoi utilizzare i caratteri jolly quando copi i file per filtrarli con schemi:
$ cp *.txt /opt/files
mkdir
crea directory
Se sei una persona organizzata, ti consigliamo di creare directory per soddisfare la tua esigenza di organizzare correttamente i tuoi file e dati in scomparti separati (directory). È facile creare directory. Emetti la mkdir
comando seguito dal nome della directory che desideri creare:
$ mkdir data
Se sei ancora più organizzato e hai pianificato un po', puoi creare un'intera gerarchia di directory con un comando. Si desidera creare una directory di dati che includa sottodirectory per documenti, moduli, test e in uscita. Perché emettere più comandi quando puoi farlo tutto in una volta:
$ mkdir -p data/documents/forms/tests/outgoing
Il -p
opzione indica al sistema che stai creando un genitore directory e sottodirectory. Controlla il tuo lavoro usando ls
comando. Puoi anche creare più directory allo stesso livello contemporaneamente.
$ mkdir docs spreadsheets email old
Usa ls
comando per essere sicuri di mkdir
comando ha fatto quello che volevi.
ps
elenca i processi in esecuzione
L'ultimo dei 10 comandi di base di Linux che devi conoscere è ps
. Questo comando mostra i processi attualmente in esecuzione. Se emetti il ps
comando, vedrai solo i tuoi processi:
$ ps
PID TTY TIME CMD
7505 pts/0 00:00:00 bash
18119 pts/0 00:00:00 ps
Se non stai eseguendo nulla, questo output non è molto interessante. È molto più interessante vedere cosa sta succedendo a livello di sistema. Puoi farlo aggiungendo alcune opzioni a ps
. Le opzioni più preziose sono -e
e -f
, rispettivamente per ogni (tutti) e formato completo. Per ottenere il maggior numero di informazioni da ps
comando, combinare le due opzioni nel comando seguente. Ho incluso le prime righe dall'output di ps -ef
dal mio sistema per te:
$ ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Jul23 ? 00:00:25 /usr/lib/systemd/systemd --system --deserialize 20
root 2 0 0 Jul23 ? 00:00:00 [kthreadd]
root 3 2 0 Jul23 ? 00:00:00 [rcu_gp]
root 4 2 0 Jul23 ? 00:00:00 [rcu_par_gp]
root 6 2 0 Jul23 ? 00:00:00 [kworker/0:0H-kblockd]
root 8 2 0 Jul23 ? 00:00:00 [mm_percpu_wq]
I campi sono semplici da capire e utili per la risoluzione dei problemi di prestazioni:
Campo | Descrizione |
---|---|
C | Utilizzo della CPU. |
CMD | Il nome del comando o del processo con percorso. |
PID | ID processo. |
PPID | ID processo padre:il processo padre è quello che ha generato il processo. |
STIME | Ora di inizio del processo. |
TIME | CPU Tempo per il processo. |
TTY | Il terminale utente che ha generato il processo. Il processo di sistema mostrerà un ?. |
UID | ID utente del titolare del processo. |
Ci sono altre opzioni che puoi usare con ps
comando, e sembra che tutti abbiano una preferenza, ma i due più popolari sono:ps -ef
e ps aux
. Entrambi ti forniscono molte informazioni sul processo.
Lì hai i 10 comandi di base di Linux che devi conoscere. Non esiste un comando più importante di un altro. Sono tutti importanti e sono tutti utili. Ho scelto questi perché sono i 10 comandi che tutti usano regolarmente, sia che tu sia un principiante fresco o un vecchio amministratore di sistema salato dei giorni bui prima di Linux.
Se sei interessato a confrontare i comandi DOS e Linux, dai un'occhiata a questo: Confronto tra i comandi DOS e Linux comuni.
[Vuoi provare Red Hat Enterprise Linux? Scaricalo ora gratuitamente.]