Obiettivi di apprendimento
- Esegui
Bash
comandi per completare le seguenti attività:- stampa la directory di lavoro corrente (
pwd
) - naviga tra le directory sul tuo computer (
cd
) - crea nuove directory (
mkdir
) - stampa un elenco di file e sottodirectory all’interno delle directory (
ls
) - elimina file (
rm
) e directory (rm -r
) - copia i file (
cp
) e le directory (cp -r
) in un’altra directory - creare facilmente nuovi file utilizzando un singolo comando (
touch
)
- stampa la directory di lavoro corrente (
Come eseguire comandi Bash nel terminale
Nella sezione precedente sulle sessioni del terminale, hai appreso che il terminale mostra un prompt che mostra che Bash
è in attesa di input.
Ricorda che, a seconda della configurazione del tuo computer, potresti vedere un carattere diverso come prompt e / o informazioni aggiuntive prima del prompt, come la tua posizione corrente all’interno della struttura dei file del tuo computer (es. la directory di lavoro corrente).
Quando si digitano comandi (da questo libro di testo o da altre fonti), non digitare il segno del dollaro (o altri caratteri). Digita solo i comandi che lo seguono.
Nota: negli esempi in questa pagina, le righe rientrate che seguono un prompt e non iniziano con un segno di dollaro ($) sono l’output del comando. I risultati dei comandi seguenti sul tuo computer saranno leggermente diversi, a seconda del tuo sistema operativo e di come hai personalizzato il tuo file system.
Comandi Bash utili per gestire directory e file
Stampa la directory di lavoro corrente (pwd)
La directory di lavoro corrente è la directory in cui vengono eseguiti i comandi. Viene tipicamente stampato come il percorso completo della directory (significa che puoi vedere la directory principale).
Per stampare il nome della directory di lavoro corrente, usa il comando pwd
.
Poiché questo è il primo comando che hai eseguito in Bash
in questa sessione, il risultato di pwd
è il percorso completo della directory home. La directory home è la directory predefinita in cui ti troverai ogni volta che avvii una nuova sessione Bash
.
Utenti Windows: nota che Terminal
utilizza le barre (/
) per indicare le directory all’interno di un percorso. Questo è diverso da Esplora file di Windows che utilizza le barre rovesciate (\
) per indicare le directory all’interno di un percorso.
Cambia directory di lavoro corrente (cd)
Spesso, potresti voler cambiare la directory di lavoro corrente, in modo da poter accedere a diverse sottodirectory e file.
Per cambiare directory, usa il comando cd
seguito dal nome della directory (ad es. cd downloads
). Quindi, puoi stampare di nuovo la tua directory di lavoro corrente per controllare il nuovo percorso.
Ad esempio, puoi cambiare la directory di lavoro in una directory documents
esistente sotto il tuo home directory, quindi controlla che la directory di lavoro corrente sia stata aggiornata.
Puoi tornare alla directory principale di qualsiasi directory corrente utilizzando il comando cd ..
, poiché il percorso completo della directory di lavoro corrente è compreso da Bash
.
Puoi anche tornare alla tua directory home (ad esempio /users/jpalomino
) in qualsiasi momento utilizzando il comando cd ~
(il carattere noto come tilde).
Crea una nuova directory (mkdir)
Il primo passo nella creazione di una nuova directory è navigare nella directory che vorresti piace essere il genitore regista y in questa nuova directory utilizzando cd
.
Quindi, utilizza il comando mkdir
seguito dal nome che desideri per dare la nuova directory (es mkdir directory-name
).
Ad esempio, puoi creare una nuova directory in documents
chiamata assignments
. Quindi, puoi navigare nella nuova directory denominata assignments
e stampare la directory di lavoro corrente per verificare il nuovo percorso.
Notare che il comando mkdir
non ha output.Inoltre, poiché assignments
viene fornito a Bash
come percorso relativo (ovvero, non ha una barra iniziale o informazioni aggiuntive sul percorso), la nuova directory viene creata nella directory di lavoro corrente (ad es. documents
) per impostazione predefinita.
Suggerimento sui dati: directory vs cartella: puoi pensare a una directory come a cartella. Tuttavia, ricorda che il termine directory considera la relazione tra quella cartella e le cartelle al suo interno e intorno ad essa.
Suggerimento sui dati: nota che stai creando un nome di directory di facile lettura. Il nome non ha spazi e utilizza tutte le lettere minuscole per supportare la lettura della macchina lungo la strada.
Stampa un elenco di file e sottodirectory (ls)
Per visualizzare un elenco di tutte le sottodirectory e file nella directory di lavoro corrente, utilizza il comando ls
.
Nell’esempio sopra, ls
ha stampato il contenuto della home directory che contiene le sottodirectory chiamate documents
e downloads
e i file denominati addresses.txt
e grades.txt
.
Puoi continuare per modificare la directory di lavoro corrente in una sottodirectory come documents
e stampare un nuovo elenco di tutti i file e le sottodirectory per visualizzare il assignments
directory.
Puoi anche creare una nuova sottodirectory in assignments
chiamato , quindi elenca i contenuti della directory assignments
per vedere la homeworks
appena creata.
Elimina un file (rm)
Per eliminare un file specifico, puoi utilizza il comando rm
seguito dal nome del file che desideri eliminare (ad es. rm filename
).
Ad esempio, puoi eliminare il file addresses.txt
nella directory home.
Elimina una directory (rm -r)
Per eliminare (cioè rimuovere) una directory e tutte le sottodirectory e i file che contiene, vai alla sua directory principale, quindi utilizza il comando rm -r
seguito dal nome della directory che desideri eliminare (ad es. rm -r directory-name
).
Ad esempio, puoi eliminare la directory assignments
nella documents
perché non soddisfa il requisito di un buon nome per una directory (cioè non sufficientemente descrittivo, che tipo di assegnazioni?).
rm
sta per remove, mentre -r
è necessario per dì a Bash
che deve ripetere (o ripetere) il comando tramite un elenco di tutti i file e le sottodirectory all’interno della directory principale.
Pertanto, la directory homeworks
appena creata in assignments
verrà rimosso anche quando assignments
viene eliminato.
Copia un file (cp)
Puoi anche copiare un file specifico in una nuova directory utilizzando il comando cp
seguito dal nome di il file che vuoi copiare e il nome della directory in cui vuoi copiare il file (es cp filename directory-name
).
Ad esempio, puoi copiare grades.txt
dalla home directory a documents
.
Tieni presente che la copia originale del file rimane in la directory originale, quindi ora avresti due copie di grades.txt
, quella originale nella directory home e la copia in documents
.
Copia una directory e il suo contenuto (cp -r)
Allo stesso modo, puoi copiare un’intera directory in un’altra directory utilizzando cp -r
seguito dal nome della directory che desideri copiare e dal nome della directory in cui desideri copiare la directory (ad es. cp -r directory-name-1 directory-name-2
).
Simile a rm -r
, -r
in cp -r
è necessario per dire a Bash
che deve ricorrere (o ripetere) il comando attraverso un elenco di tutti i file e le sottodirectory all’interno della directory principale.
Ancora una volta, la copia originale della directory rimane nella directory originale.
Crea un nuovo file utilizzando un comando singolo (touch)
Puoi creare un nuovo file vuoto utilizzando il comando singolo touch
(ad es touch file-name.txt
). Questo comando è stato originariamente creato per gestire i timestamp dei file.Tuttavia, se un file non esiste già, il comando creerà il file.
Questo è un modo incredibilmente utile per creare rapidamente e in modo programmatico un nuovo file vuoto che può essere popolato in un secondo momento.
Fai pratica con le tue abilità di base
L’organizzazione del progetto è parte integrante alla ricerca efficiente. In questa sfida, utilizzerai Bash
per creare una directory earth-analytics
che utilizzerai in questo libro di testo.
Creerai quindi una directory data
all’interno della directory earth-analytics
per salvare tutti i dati necessari per completare i compiti a casa e seguire insieme al corso.
Crea una directory per l’analisi della Terra
Inizia creando una earth-analytics
directory (o cartella) nella tua home directory. Ricorda che questa è la directory predefinita in cui si apre il Terminale.
- Crea una nuova directory chiamata
earth-analytics
.
- Quindi, cambia la tua directory di lavoro in
earth-analytics
directory e crea una nuova directory al suo interno denominatadata
.
- Infine, torna alla directory home e conferma che puoi accedere alle directory appena create.