GNU/Linux >> Linux Esercitazione >  >> Linux

Comandi della directory Linux:una guida completa

Le competenze di Linux sono sempre richieste. Sviluppa il tuo set di abilità imparando a usare i comandi di directory Linux e i comandi di file Linux. Questa guida è scritta come un viaggio. Una serie di istruzioni dettagliate che guidano l'utente attraverso la navigazione, la creazione, la rimozione, lo spostamento e la ridenominazione di directory e file. Tutto dalla riga di comando di Linux.

Se sei pronto per sviluppare competenze Linux pratiche e reali, sei nel posto giusto!

Prerequisiti

Per esercitarsi con gli esempi di Linux in questa guida, è necessario disporre di un computer che esegue Linux. La distribuzione di Linux non ha importanza. Tutte le demo in questa guida utilizzeranno RedHat Enterprise Linux 8 (RHEL).

Ubuntu 20.04 LTS è un'ottima alternativa se non vuoi usare RedHat.

Elenco e ricerca di directory

Se stai seguendo, apri una sessione terminale sul tuo computer Linux.

Trovare la directory corrente con pwd

Quando stai navigando in un file system in un terminale, il tuo prompt si trova sempre in una determinata directory chiamata directory corrente o directory di lavoro. A seconda della configurazione del terminale, potresti vedere o meno la directory di lavoro nel prompt.

Il pwd o il comando print directory di lavoro visualizza la directory corrente in cui ti trovi. Immettere il comando come mostrato di seguito:

pwd

Per impostazione predefinita, la directory /home/ è il punto di partenza in una sessione del terminale a meno che tu non abbia effettuato l'accesso con l'account root.

Quando esegui il comando, viene restituita la directory di lavoro come mostrato di seguito:

A differenza di Windows, Linux non utilizza lettere di unità (C:\ , D:\ , ecc.) per dischi o partizioni (un'area logica su un disco). In Linux, le directory sono precedute da un / .

Elencare file e cartelle con il ls Comando

All'interno delle directory, troverai file e sottocartelle. Il pwd il comando mostra solo la directory di lavoro, quindi come vedi le sottodirectory e i file? Il ls comando.

Il ls o il comando list directory è l'equivalente di dir comando in Windows. Questo comando elenca i file e le directory nella directory corrente o in qualsiasi percorso alternativo specificato.

Il dir il comando esiste anche in Linux. Equivalente all'esecuzione di ls -C -b . In genere, ls viene utilizzato su dir poiché esiste una maggiore flessibilità di visualizzazione.

Per trovare file e directory in /home/user directory, esegui ls comando. L'output risultante sono i vari file e directory (cartelle) contenuti all'interno.

ls

Il ls Il comando visualizza anche informazioni aggiuntive su file e cartelle come autorizzazioni, dimensione del file (in byte) e date del file con il l opzione. Come in Windows, alcuni file e cartelle potrebbero essere nascosti dal sistema operativo dalla visualizzazione normale. Visualizza i file che non vengono visualizzati per impostazione predefinita con il a opzione.

I file di punti sono file di configurazione di testo normale nei sistemi Unix. Qualsiasi file può essere nascosto quando il nome del file è preceduto da un punto . .

ls -la

Puoi vedere nello screenshot qui sotto usando il la opzioni, ricevi molte più informazioni visualizzate in sei diverse colonne da sinistra a destra:

  • Autorizzazioni, nel formato POSIX ACL, con il precedente d a significare una directory
  • Conteggio sottodirectory con directory contenenti solo file come 1
  • Utente e gruppo a cui appartiene un file o una cartella
  • Dimensioni della directory o del file in byte
  • Ora dell'ultima modifica
  • Nome del file o della cartella

Puoi trovare tutti i file e le cartelle nelle sottodirectory con il -R opzione per visualizzare i contenuti della directory in modo ricorsivo.

ls -R

Se vuoi visualizzare il contenuto di una directory diversa, passa la directory di destinazione a ls . Di seguito sono mostrati /var/log contenuto della directory senza uscire da /home/user directory.

ls /var/log

Individuazione di file e cartelle con find

Individuare i file su un file system di grandi dimensioni è difficile. Per fortuna, il find Il comando offre diversi modi per individuare i file e le cartelle di cui potresti aver bisogno.

Ad esempio, vuoi trovare il /var directory. Dato un punto di partenza, / e impostando il tipo come d per la directory, cerca nel filesystem il var nome.

sudo find / -type d -name "var"

È possibile che venga visualizzato un errore di autorizzazione negata anche quando si esegue il comando utilizzando sudo . Il find comando tenta di cercare un file system virtuale relativo a Gnome (se usi KDE, questo errore non si applica) a cui il tuo utente non ha accesso. Invece, non discendere le directory su altri filesystem usando il -xdev cambia invece.

Che ne dici di trovare tutti i file con l'estensione log? Simile a prima, cerca nel filesystem di root, ma questa volta specificando f per i file e cerca il modello di caratteri jolly di *.log .

sudo find / -type f -name "*.log"

Il find comando ha altre opzioni, come H , L e P , che gestiscono il modo in cui vengono trattati i collegamenti simbolici.

Ricerca di file più veloce con locate

Come find , il locate comando cerca file e cartelle ma lo fa più velocemente cercando in un database invece che nell'intero filesystem.

Forse hai un file chiamato MyTextFile.txt da qualche parte sul tuo computer. Hai dimenticato dove si trova e hai bisogno di aiuto per trovare il percorso. Usa il locate comando per trovare il file, fornendogli il nome del file come mostrato di seguito.

locate MyTextFile.txt

Il locate comando trova i file ma non troverà nuovi file fino a sudo updatedb corre. Un processo cron esegue updatedb una volta al giorno, ma puoi eseguire questo comando manualmente in qualsiasi momento.

Come troveresti tutte le directory denominate tmp ? Potresti passare */tmp , che dice a locate per cercare nel database le voci che terminano con tmp .

locate */tmp

Cambiare le directory con il cd Comando

Finora hai operato per la maggior parte all'interno di un'unica directory. Operare in Linux spesso significa cambiare directory, fatto attraverso il cd o cambia il comando di directory. Utilizzando l'esempio seguente si sposta dalla directory home corrente, /home/user, a /var/log durante la verifica della directory corrente.

# Show that you are in the current home directory
pwd
# Change to the /var/log directory
cd /var/log
# Verify that you are now in the /var/log directory
pwd

Ora che hai imparato a passare a una directory specifica, come fai a salire di una directory? Per salire di una directory, utilizzerai due punti (.. ), passato al cd comando. Una volta eseguito, come mostrato di seguito, ti sposti su una singola directory, riportandoti nel /var/ directory.

# Show that you are currently in the /var/log directory
pwd
# Move up a single directory
cd ..
# Verify that you have moved up to the /var directory
pwd

Quando vuoi passare a /var/log directory di nuovo, passa il nome della directory in cui cambiare con un / finale .

# Show that you are currently in the /var directory
pwd
# Change to the /var/log directory
cd log/
# Verify that you are back in the /var/log directory
pwd

Come mostrato di seguito, inserendo solo la sottodirectory di destinazione con un / finale elimina la necessità di inserire ogni volta un percorso assoluto.

Se non sei sicuro del nome di un file o di una directory quando utilizzi cd , premi il TAB tasto due volte per produrre un elenco di possibilità. Esempio:cd

Creare una nuova directory con mkdir

La creazione di una directory in Linux avviene tramite il mkdir o comando make directory. Per creare una nuova directory chiamata MyAwesomeLinuxDir nella tua home directory (indicata dal percorso speciale ~ ), usa il comando seguente.

mkdir ~/MyAwesomeLinuxDir

Se Linux crea la directory correttamente, Linux non restituirà un messaggio nella console. Puoi elencare le directory nella tua home directory con il ls comando per verificare che la directory, MyAwesomeLinuxDir , esiste.

Ora aggiungi un po' di complessità e crea più nuove directory con un solo comando. Per creare più directory, usi il mkdir comando e passare più nomi di directory separati da uno spazio.

mkdir ~/Directory01 ~/Directory02 ~/Directory03

Ancora una volta, elenca le directory con il ls comando. Come puoi vedere di seguito, ora esistono altre tre directory.

Utile come usare mkdir creare una singola cartella è, cosa succede se è necessario creare più cartelle tutte in una volta? Invece di digitare ogni directory, usa l'espansione delle parentesi! Questa tecnica è efficace quando si creano più directory con uno schema simile.

L'espansione delle parentesi rende la creazione di più directory basate su uno schema più veloce rispetto alla digitazione manuale di ciascuna. Per dimostrare l'espansione delle parentesi, aggiungi {03..07} dopo il nome Directory per generare cinque directory. Potresti notare che Directory03 esiste già perché l'hai creato in un esempio precedente. Evita un errore sulle directory esistenti con il p opzione.

mkdir -p ~/Directory{03..07}

Come mostrato di seguito, Directory03 non viene creato, ma quattro nuove directory che terminano con 04 attraverso 07 ora esistono.

Creazione di un nuovo file con touch

Ora che hai imparato a creare cartelle, come crei un file? Usando il touch di Linux comando crea un file vuoto, come mostrato nel prossimo esempio.

touch ATABlog

Ancora una volta, elenca i file e le cartelle nella tua home directory, per vedere che il nuovo ATABlog il file esiste.

Ricorda come hai appreso che il mkdir il comando può utilizzare l'espansione delle parentesi per creare più directory? La stessa tecnica è utile con il touch comanda anche tu! Creane altri cinque ATABlog file che terminano da 01 a 05.

touch ATABlog{01..05}

Dopo aver elencato i file e le cartelle con ls , esistono cinque nuovi file nella tua home directory.

Rimozione di directory e file in Linux

Nell'ultima sezione, hai imparato come creare directory e file in Linux. Per rimuovere directory e file, usa il rm comando per rimuovere le directory e il loro contenuto.

Ad esempio, vuoi rimuovere un file chiamato ATABlog01. Rimuovere un file passando il nome del file al rm comando. Come mostrato di seguito, stai rimuovendo ATABlog01 file dalla directory corrente.

rm ATABlog01

Puoi rimuovere più file contemporaneamente aggiungendo uno spazio tra ogni nome di file nella directory corrente. Elimina il restante ATABlog## file in un unico rm comando, come mostrato di seguito.

rm ATABlog02 ATABlog03 ATABlog04 ATABlog05

Ora che hai imparato a rimuovere i file, è ora di rimuovere una directory. Per impostazione predefinita, il rm il comando non rimuove le directory. Rimuovere una directory specificando il r o ricorsivo opzione, come mostrato nell'esempio seguente.

rm -r Directory01

Nello screenshot qui sotto, puoi vedere quella Directory01 è stato rimosso.

Puoi usare l'espansione delle parentesi graffe con il rm comando anche. Fornire l'intervallo da 2 a 7 all'interno del rm command informa il comando remove di eliminare tutte le directory denominate Directory02 tramite Directory07 . Come mostrato quando confermato da un ls comando.

rm -r Directory{02..07}

Per prevenire la rimozione accidentale di file o cartelle errati, utilizza il i per richiedere ogni file. Rendi l'opzione meno onerosa con I opzione che richiede solo su tre o più file.

Copiare directory e file in Linux

Copia i file in Linux con cp comando. Non solo cp comando copia directory e file in Linux, ma anche attributi di file e creazione di collegamenti simbolici.

Per dimostrare la copia di un file dagli esempi precedenti, copia il ATABlog file in Documenti/ directory con il cp comando. Aggiungi il v opzione per visualizzare ulteriori informazioni sull'esatta operazione di copia.

cp -v ATABlog Documents/

Ora copia la cartella, MyAwesomeLinuxDir , ai Documenti directory. Qui, come con rm comando, assicurati di aggiungere il r o un'opzione ricorsiva per copiare la directory, come mostrato nell'esempio seguente.

cp -r MyAwesomeLinuxDir/ Documents/

Sposta directory e file

Nella sezione precedente, hai copiato file e cartelle utilizzando il cp comando. Per spostarsi directory e file in Linux, usa il mv comando. Per spostare le directory in Linux, usa il mv comando. Il mv il comando è simile a quello del cp comando che hai imparato negli esempi precedenti.

mv [options] [source] [destination]

Il mv comando è come tagliare e incollare in Windows, con il vantaggio di poter rinominare i file contemporaneamente. Le prossime sezioni ti mostreranno come usare mv per entrambi gli scenari.

Usa usa il -i opzione da richiedere prima di ogni mossa o il -f opzione per spostare forzatamente gli elementi senza chiedere conferma.

Per dimostrare, sposta il file Documents/ATABlog al Desktop directory con il mv comando. Sposta la cartella, Documents/MyAwesomeLinuxDir al Desktop anche, come mostrato di seguito.

mv Documents/ATABlog Desktop/
mv Documents/MyAwesomeLinuxDir Desktop/

I tuoi comandi dovrebbero assomigliare all'esempio seguente. Ricorda che stai spostando il file e la directory (sorgente) in un'altra directory (destinazione).

Usa il ls comando per vedere che entrambi si trovano ora nel Desktop directory.

Rinominare directory e file

Sebbene non ci sia un comando di ridenominazione, il mv il comando svolge lo stesso ruolo. Invece di passare solo una destinazione al mv comando, specifica il file o la cartella risultante senza una barra finale da spostare e rinominare.

Sposta il file e la cartella nella tua home directory mentre rinomini il file in ATABlog_Renamed . Allo stesso modo, fai lo stesso con MyAwesomeLinuxDir e rinomina la directory in MyAwesomeLinuxDir_Renamed nella home directory, come mostrato di seguito.

mv Desktop/ATABlog ~/ATABlog_Renamed

mv Desktop/MyAwesomeLinuxDir ~/MyAwesomeLinuxDir_Renamed

Passaggi successivi

In questo articolo, hai appreso molti dei comandi comuni delle directory Linux, ad esempio come attraversare un filesystem Linux insieme alla creazione, allo spostamento e all'eliminazione di file.


Linux
  1. Come installare Void Linux:una guida passo passo completa

  2. Guida completa per l'utilizzo di AsciiDoc in Linux

  3. La guida completa per principianti a LVM in Linux

  4. Comandi Linux dalla A alla Z

  5. Come creare comandi personalizzati in Unix/Linux?

10 comandi Linux più utili

Guida completa per installare OxygenOS su OnePlus One in Linux

Guida completa all'amministrazione degli utenti su Linux

Guida completa alla registrazione di Linux

I 30 migliori comandi Linux

Una guida completa per installare Tomcat su Linux