Trovare file e directory in Linux è un'abilità essenziale per qualsiasi amministratore di sistema. Il comando fd è uno strumento da riga di comando utilizzato per trovare file e directory in Linux. È un'alternativa semplice e veloce al comando trova. Rispetto al comando trova, il comando fd ha una sintassi più intuitiva, un output colorato e una velocità di ricerca più veloce. Supporta anche l'uso di espressioni regolari e può ignorare i file e le directory nascosti per impostazione predefinita.
In questo post imparerai come trovare file con il comando fd in Linux.
Prerequisiti
- Un server che esegue Linux sulla piattaforma Atlantic.Net Cloud
- Una password di root configurata sul tuo server
Crea server cloud Atlantic.Net
Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo qualsiasi sistema operativo Linux con almeno 1 GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.
Installa il comando fd
Per i sistemi operativi Debian e Ubuntu, installa il comando fd utilizzando il comando seguente:
apt-get install fd-find -y
Per i sistemi operativi RHEL, Rocky Linux e Fedora, installa il comando fd utilizzando il comando seguente:
dnf install fd-find -y
Dopo aver installato il comando fd, puoi verificare la versione del comando fd con il seguente comando:
fd --version
Otterrai il seguente output:
fd 7.3.0
Sintassi di base del comando fd
La sintassi di base del comando fd è mostrata di seguito:
fd [OPTION] [PATTERN] [PATH]
Di seguito viene mostrata una breve spiegazione di ciascuna opzione:
- -H – Includi file e directory nascosti nei risultati di ricerca.
- -Io – Mostra i risultati della ricerca che verrebbero ignorati dai file .gitignore, .ignore o .fdignore.
- -s – Esegui una ricerca con distinzione tra maiuscole e minuscole.
- -i – Esegui una ricerca senza distinzione tra maiuscole e minuscole.
- -a – Mostra percorsi assoluti anziché relativi.
- -L – Segui i collegamenti simbolici.
- -j – Utilizzato per definire il numero di thread utilizzati per la ricerca.
Utilizzo di base del comando fd
L'utilizzo del comando fd senza alcuna opzione cercherà tutti i file e le directory nella directory di lavoro corrente:
fd
Otterrai il seguente output:
directory1 directory1/my-File1.txt directory1/my-file.txt directory2 directory2/my-File2.txt directory2/my-file2.txt directory3 directory3/File4.txt directory3/file2.png directory3/man directory3/women
fd -H
Uscita:
.allow .git directory1 directory1/my-File1.txt directory1/my-file.txt directory2 directory2/my-File2.txt directory2/my-file2.txt directory3 directory3/File4.txt directory3/file2.png directory3/man directory3/women
Usa l'opzione -p per cercare tutti i file nella directory specificata:
fd -p directory1
Uscita:
directory1 directory1/my-File1.txt directory1/my-file.txt
Trova file con corrispondenza di stringa
Puoi usare l'opzione -F per trovare un file che corrisponda a una stringa contenente espressioni regolari.
fd -F my-file
Uscita:
directory1/my-File1.txt directory1/my-file.txt directory2/my-File2.txt directory2/my-file2.txt
Trova file con distinzione tra maiuscole e minuscole
Puoi usare i -s opzione per abilitare la distinzione tra maiuscole e minuscole e mostrare solo i file con distinzione tra maiuscole e minuscole nel risultato.
fd -s file
Uscita:
directory1/my-file.txt directory2/my-file2.txt directory3/file2.png
Trova file per tipo
Puoi usare il -t opzione per trovare un file in base al tipo.
Ad esempio, per trovare tutte le directory e le sottodirectory nella directory di lavoro corrente, eseguire il comando seguente:
fd -t d
Uscita:
directory1 directory2 directory3 directory3/man directory3/women
Per trovare solo file normali, usa -t opzione con la f indicatore:
fd -t f
Uscita:
directory1/my-File1.txt directory1/my-file.txt directory2/my-File2.txt directory2/my-file2.txt directory3/File4.txt directory3/file2.png
Per trovare solo file eseguibili, usa -t opzione con la x indicatore:
fd -t x
Per trovare solo file e directory vuoti, usa l'opzione -t con la e indicatore:
fd -t e
Trova file per estensione
Puoi usare il -e opzione per trovare un file in base alle loro estensioni.
Per trovare tutti i file .png, esegui il comando seguente:
fd -e png
Uscita:
directory3/file2.png
Per trovare sia file di testo che png, esegui il seguente comando:
fd -e png -e txt
Uscita:
directory1/my-File1.txt directory1/my-file.txt directory2/my-File2.txt directory2/my-file2.txt directory3/File4.txt directory3/file2.png
Trova file per posizione
Puoi usare il -p opzione per trovare un file da una posizione specificata.
fd file.txt -p directory1
Uscita:
directory1/my-file.txt
Puoi anche trovare tutti i file da più posizioni.
Ad esempio, per trovare tutti i file normali da directory1 e directory2, eseguire il comando seguente:
fd . ./directory1 ./directory2 -t f
Uscita:
directory1/my-File1.txt directory1/my-file.txt directory2/my-File2.txt directory2/my-file2.txt
Trova file per dimensione
Puoi usare l'opzione -S per trovare il file in base alla sua dimensione.
Ad esempio, per trovare tutti i file con una dimensione pari o superiore a 1 MB, eseguire il comando seguente:
fd -S +1m
Esegui il comando seguente se desideri trovare tutti i file con dimensioni pari o inferiori a 1 MB:
fd -S -1m
Trova file in base ai dati
Il comando fd ti permetterà anche di trovare i file in base alla data di creazione. Puoi specificare la durata della settimana, del giorno, dell'ora o della data.
Ad esempio, trova tutti i file modificati prima di "2022-02-02 10:00:00", esegui il comando seguente:
fd -t x --changed-before "2022-02-02 10:00:00"
Per trovare tutti i file modificati entro due settimane, esegui il comando seguente:
fd -t x --changed-within 2week
Per trovare tutti i file modificati entro cinque giorni, esegui il comando seguente:
fd -t x --changed-within 5day
Conclusione
In questo post, abbiamo spiegato il comando fd con diversi esempi per mostrarti come trovare i file usando i tuoi parametri personalizzati. Provalo sull'hosting VPS di Atlantic.Net!