GNU/Linux >> Linux Esercitazione >  >> Linux

Trovare non ricorsivo quando viene fornito uno schema sulla riga di comando?

Immagina un albero di origine. Ci sono file xml ovunque.

Ma poiché c'è un XYZ.xml alla radice di questo albero, non troverà i miei file xml.

find -iname *.xml

resi

./XYZ.xml

invece di

./XYZ.xml
./a/b/c/bob.xml
./b/d/top.xml

Risposta accettata:

find -iname '*.xml'

Altrimenti, la tua shell espande *.xml a XYZ.xml e il comando che viene effettivamente eseguito è

find -iname XYZ.xml

Il motivo per cui funziona se non ci sono file XML nella directory corrente è che le shell generalmente lasciano i caratteri jolly non espansi se non corrispondono a nulla. In generale, ogni volta che vuoi che i caratteri jolly vengano espansi da un programma diverso dalla shell (ad esempio da find , tar , scp , ecc.) è necessario citarli in modo che la shell non tenti di espanderli da sola.


Linux
  1. 8 suggerimenti per la riga di comando di Linux

  2. Ottieni di più dalla riga di comando di Linux con GNU Parallel

  3. Come trovare file in CentOS 8 sulla riga di comando

  4. Bash Echo La riga di comando eseguita sulla riga di comando stessa (non in uno script)?

  5. Accelera la sincronizzazione durante la migrazione di un server Linux dalla riga di comando

Padroneggia la riga di comando di Linux

Come cercare file dalla riga di comando di Linux

Come trovare file sulla riga di comando di Ubuntu

Trova la riga di comando?

Come scoprire se httpd è in esecuzione o meno tramite la riga di comando?

Come trovo il numero di riga in Bash quando si è verificato un errore?