GNU/Linux >> Linux Esercitazione >  >> Linux

find:i percorsi devono precedere l'espressione:come faccio a specificare una ricerca ricorsiva che trova anche i file nella directory corrente?

Prova a metterlo tra virgolette:ti stai imbattendo nell'espansione con caratteri jolly della shell, quindi ciò che stai effettivamente passando per trovare sarà simile a:

find . -name bobtest.c cattest.c snowtest.c

... causando l'errore di sintassi. Quindi prova questo invece:

find . -name '*test.c'

Nota le virgolette singole attorno all'espressione del tuo file:queste impediranno alla shell (bash) di espandere i tuoi caratteri jolly.


Quello che sta succedendo è che la shell sta espandendo "*test.c" in un elenco di file. Prova a usare l'escape dell'asterisco come:

find . -name \*test.c

Prova a metterlo tra virgolette:

find . -name '*test.c'

Linux
  1. Come utilizzare la GUI per cercare file in Gnome?

  2. Come utilizzare il comando trova di Linux per trovare i file

  3. Elenca i file in modo ricorsivo nella CLI di Linux con il percorso relativo alla directory corrente

  4. Come contare il numero di file in ogni directory?

  5. Come posso cercare nelle directory e trovare i file che corrispondono a regex?

Come trovare file in Linux con il comando Trova

Come trovare il numero di file in una directory e sottodirectory

Come contare i file nella directory in Linux

Come cercare file dalla riga di comando di Linux

Come trovare la dimensione totale di una directory in Linux

Come trovare file con il comando fd in Linux