THE LINUX COMMAND LINE – 2 – Navigazione

()

La prima cosa che dobbiamo imparare (oltre a come per digitare) è come navigare nel file system sul nostro sistema Linux. In questo capitolo, introdurremo i seguenti comandi:

 

pwd     Stampa il nome della directory di lavoro corrente

cd         Cambia directory

ls           Elenco contenuti della directory

 

Comprensione dell’albero dei file system

Come Windows, un sistema operativo simile a Unix come Linux organizza i suoi file in quella che viene chiamata una struttura di directory gerarchica.

Ciò significa che sono organizzati in una struttura ad albero di directory (a volte chiamate cartelle in altri sistemi), che possono contenere file e altre directory. La prima directory nel file system è chiamata directory root. La directory principale contiene file e sottodirectory, che contengono più file e sottodirectory e così via.

A differenza di Windows, che ha un albero file system separato per ogni dispositivo di archiviazione, i sistemi simili a Unix come Linux hanno sempre un singolo albero file system, indipendentemente da quante unità o dispositivi di archiviazione sono collegati al computer. I dispositivi di archiviazione sono collegati (o più correttamente, montati) in vari punti dell’albero in base ai capricci dell’amministratore di sistema, la persona (o le persone) responsabile della manutenzione del sistema.

La directory di lavoro corrente

Molti di noi probabilmente hanno familiarità con un file manager grafico che rappresenta l’albero del file system, come illustrato nella Figura .Si noti che l’albero è di solito indicato capovolto, cioè con la radice in alto e vari rami discendente sotto. Tuttavia, la riga di comando non ha immagini, quindi per navigare nella struttura del file system, dobbiamo pensarla in modo diverso. Immagina che il file system sia un labirinto a forma di albero messo sottosopra e siamo in grado di stare al centro di esso.

In qualsiasi momento ci troviamo all’interno di una singola directory e possiamo vedere i file contenuti nella directory e il percorso della directory sopra di noi (chiamata directory principale) e tutte le sottodirectory sotto di noi. La directory in cui ci troviamo si chiama directory di lavoro corrente. Per visualizzare la directory di lavoro corrente, utilizziamo il comando pwd (print working directory).

[me@linuxbox ~]$ pwd

/home/me

Quando accediamo per la prima volta al nostro sistema (o avviamo una sessione di emulazione terminale), la nostra directory di lavoro corrente viene impostata sulla nostra directory home. A ciascun account utente viene assegnata la propria directory home ed è l’unico posto in cui un utente normale è autorizzato a scrivere file.

Cose importanti da sapere sui nomi dei file

Sui sistemi Linux, i file sono denominati in modo simile a quello di altri sistemi come Windows, ma ci sono alcune differenze importanti.

  • I nomi di file che iniziano con un carattere punto sono nascosti. Questo significa solo che non li elencheremo a meno che tu non dica -s. Quando è stato creato il tuo account, diversi file nascosti sono stati inseriti nella tua home directory per configurare le cose per il tuo account. Daremo un’occhiata più da vicino ad alcuni di questi file per vedere come personalizzare il proprio ambiente. Inoltre, alcune applicazioni inseriscono i file di configurazione e impostazioni nella directory principale come file nascosti.

  • I nomi di file e i comandi in Linux, come Unix, fanno distinzione tra maiuscole e minuscole.

Sono detti “case sensitive”. I nomi file File1 e file1 si riferiscono a file diversi.

  • Sebbene Linux supporti nomi di file lunghi che possono contenere spazi incorporati e caratteri di punteggiatura, limitare i caratteri di punteggiatura nei nomi dei file creati a punto, trattino e carattere di sottolineatura. Soprattutto, non incorporare spazi nei nomi dei file. Se si desidera rappresentare spazi tra le parole in un nome file, utilizzare i caratteri di sottolineatura. Ti ringrazierai più tardi.

  • Linux non ha il concetto di “estensione di file” come alcuni altri sistemi operativi. Puoi nominare i file come preferisci. Il contenuto o lo scopo di un file è determinato con altri mezzi. Sebbene i sistemi operativi simili a Unix non utilizzino le estensioni dei file per determinare il contenuto / lo scopo dei file, molti programmi applicativi lo fanno

Elenco dei contenuti di una directory

Per elencare i file e le directory nella directory di lavoro corrente, utilizziamo il comando ls.

[me@linuxbox ~]$ ls

Desktop Documents Music Pictures Public Templates Videos

In realtà, possiamo usare il comando ls per elencare il contenuto di qualsiasi directory, non solo la directory di lavoro corrente, e ci sono anche molte altre cose che può fare.

Modifica della directory di lavoro corrente

Per cambiare la nostra directory di lavoro (dove ci troviamo nel labirinto a forma di albero), usiamo il comando cd. Per fare ciò, digitare cd seguito dal percorso della directory di lavoro desiderata. Un nome di percorso è il percorso che prendiamo lungo i rami dell’albero per raggiungere la directory che vogliamo. Possiamo specificare i nomi dei percorsi in due modi diversi: come nomi di percorso assoluti o come nomi di percorso relativi.

Vediamo prima i nomi assoluti.

Nome di Percorso assoluto

Un nome di percorso assoluto inizia con la directory principale e segue il ramo dell’albero per ramo fino a quando il percorso della directory o del file desiderato non viene completato. Ad esempio, v’è una directory sul sistema in cui sono installati la maggior parte dei programmi del sistema. Il percorso della directory è / usr / bin. Ciò significa che dalla directory radice (rappresentata dalla barra iniziale nel percorso) c’è una directory chiamata usr che contiene una directory chiamata bin.

[me@linuxbox ~]$ cd /usr/bin

[me@linuxbox bin]$ pwd

/usr/bin

[me@linuxbox bin]$ ls

Ora possiamo vedere che abbiamo cambiato la directory di lavoro corrente in

/ usr / bin

…. e che è pieno di file.

Notare come è cambiato il prompt della shell?

Per comodità, di solito è impostato per visualizzare automaticamente il nome della directory di lavoro.

Percorsi assoluti

Un percorso assoluto inizia con la directory principale e segue l’albero ramo per ramo fino al completamento del percorso della directory o del file desiderati.

Ad esempio, c’è una directory sul tuo sistema in cui è presente gran parte del sistema i programmi sono installati. Il percorso della directory è / usr / bin. Questo significa che dalla directory principale (rappresentata dalla barra iniziale nel percorso) c’è una directory chiamata usr che contiene una directory chiamata bin.

[me @ linuxbox ~] $ cd / usr / bin

[me @ linuxbox bin] $ pwd

/ usr / bin

[me @ linuxbox bin] $ ls

… Elenco di molti, molti file …

Ora possiamo vedere che abbiamo cambiato la directory di lavoro corrente in

/ usr / bin e che è pieno di file. Notare come è cambiato il prompt della shell? Per comodità, di solito è impostato per visualizzare automaticamente il nome della directory di lavoro.

Percorsi relativi

Se un percorso assoluto inizia dalla directory principale e porta alla sua destinazione, un percorso relativo inizia dalla directory di lavoro. Per fare ciò, utilizza un paio di notazioni speciali per rappresentare le posizioni relative nella struttura del file system. Queste notazioni speciali sono. (punto) e .. (punto punto). La notazione punto si riferisce alla directory di lavoro e la notazione .. si riferisce alla directory padre della directory di lavoro. Ecco come funziona. Cambiamo di nuovo la directory di lavoro in / usr / bin.

[me @ linuxbox ~] $ cd / usr / bin

[me @ linuxbox bin] $ pwd

/ usr / bin

Ora diciamo che volevamo cambiare la directory di lavoro in

genitore di / usr / bin, che è / usr.

Potremmo farlo in due modi diversi

con un nome di percorso assoluto:

[me @ linuxbox bin] $ cd / usr

[me @ linuxbox usr] $ pwd

/ usr

o con un percorso relativo:

[me @ linuxbox bin] $ cd ..

[me @ linuxbox usr] $ pwd

/ usr

Due metodi diversi con risultati identici. Quale dovremmo usare? Quello che richiede il minimo di battitura! Allo stesso modo, possiamo cambiare la directory di lavoro da / usr a / usr / bin in due modi diversi, utilizzando un percorso assoluto:

[me @ linuxbox usr] $ cd / usr / bin

[me @ linuxbox bin] $ pwd

/ usr / bin

o usando un percorso relativo:

[me @ linuxbox usr] $ cd ./bin

[me @ linuxbox bin] $ pwd

/ usr / bin

Ora, c’è qualcosa di importante da sottolineare qui. In quasi tutti casi, possiamo omettere la parte ./ perché è implicita.

Digitare quanto segue fa la stessa cosa:

[me @ linuxbox usr] $ cd bin

In generale, se non specifichiamo un percorso su qualcosa, verrà assunta la directory di lavoro.

Fatti importanti sui nomi dei file

Sui sistemi Linux, i file sono denominati in modo simile a quello di altri sistemi come Windows, ma ci sono alcune differenze importanti.

  • I nomi di file che iniziano con un carattere punto sono nascosti. Questo significa solo che non li elencheremo a meno che tu non dica -s. Quando è stato creato il tuo account, diversi file nascosti sono stati inseriti nella tua home directory per configurare le cose per il tuo account.

Daremo uno sguardo più da vicino ad alcuni di questi file per vedere come personalizzare l’ambiente. Inoltre, alcune applicazioni inseriscono i file di configurazione e impostazioni nella directory principale come file nascosti.

  • I nomi di file e i comandi in Linux, come Unix, fanno distinzione tra maiuscole e minuscole. I nomi file File1 e file1 si riferiscono a file diversi.

  • Sebbene Linux supporti nomi di file lunghi che possono contenere spazi incorporati e caratteri di punteggiatura, limitare i caratteri di punteggiatura nei nomi dei file creati a punto, trattino e trattino basso. Soprattutto, non incorporare spazi nei nomi dei file. Se si desidera rappresentare spazi tra le parole in un nome file, utilizzare i caratteri di sottolineatura.

  • Linux non ha il concetto di “estensione di file” come alcuni altri sistemi operativi. Puoi nominare i file come preferisci. Il contenuto o lo scopo di un file è determinato con altri mezzi. Sebbene i sistemi operativi simili a Unix non utilizzino le estensioni dei file per determinare il contenuto / lo scopo dei file, molti programmi applicativi lo fanno.

1.7 Che cos’è un comando?

La risposta più semplice alla domanda “Che cos’è un comando?” Un comando è un programma software che, quando eseguito sulla riga di comando, esegue un’azione sul computer. Quando consideri un comando, usando questa definizione, stai considerando cosa potrebbe succede quando esegui un comando. Quando si digita un comando, il sistema operativo esegue un processo in grado di leggere input, manipolare dati e produrre output. Da questo punto di vista, un comando esegue un processo sul sistema operativo, che quindi fa eseguire un lavoro al computer. Tuttavia, c’è un altro modo di vedere cos’è un comando: guardare la sua fonte.

La fonte è da dove proviene il comando “e” ci sono diverse fonti di comandi all’interno della shell della tua CLI:

Comandi integrati nella shell stessa: un buon esempio è il comando cd in quanto fa parte della shell bash. Quando un utente digita il comando cd, la shell bash è già in esecuzione e sa come interpretare quel comando, senza che sia necessario avviare altri programmi.

Comandi memorizzati nei file cercati dalla shell: se si digita un comando ls, la shell cerca tra le directory elencate nella variabile PATH per cercare di trovare un file chiamato ls che può essere eseguito.

Questi comandi possono anche essere eseguiti digitando il percorso completo del comando.

Alias: un alias può sovrascrivere un comando, una funzione o un comando incorporato che si trova in un file.

Gli alias possono essere utili per creare nuovi comandi creati da funzioni e comandi esistenti.

Funzioni: le funzioni possono anche essere create utilizzando i comandi esistenti per creare nuovi comandi, sovrascrivere i comandi integrati nella shell o i comandi memorizzati nei file. Alias, e funzioni vengono normalmente caricati dai file di inizializzazione al primo avvio della shell, discussi più avanti in questa sezione.

Considera che

Mentre gli alias saranno trattati in dettaglio in una sezione successiva, questo breve esempio può essere utile per comprendere il concetto di comandi. Un alias è essenzialmente un soprannome per un altro comando o serie di comandi. Ad esempio, il comando cal 2014 visualizzerà il calendario per l’anno 2014. Supponiamo che finiate per eseguire spesso questo comando. Invece di eseguire il comando completo ogni volta, è possibile creare un alias chiamato mycal ed eseguire l’alias, come dimostrato nel seguente grafico:

sysadmin @ localhost: ~ $ alias mycal = “cal 2014”

sysadmin @ localhost: ~ $ mycal

2014

Riepilogo dei termini chiave

Comando: qualcosa che un utente digita in una CLI che si tradurrà in un’azione in atto sul sistema.

Compilato: il risultato della conversione di codice di testo leggibile dall’uomo in codice binario leggibile dal sistema.

Codice sorgente: il codice di testo originale leggibile dall’uomo.

File di script: un file di testo che contiene comandi ed è stato reso eseguibile.

/ 5
Grazie per aver votato!

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?