Por que não 'encontra' esses arquivos [duplicados]?

0

Considere:

$ find . -name *.css
./style.css
./view/css/style.css

$ ls view/css/
consultation.css  jquery.scombobox.min.css  page-content.css  style.css

Por que find perdeu os arquivos em view/css ? Isso está no Ubuntu 15.10, um obscuro derivado do Debian.

    
por dotancohen 22.03.2016 / 19:03

2 respostas

2

Eu estou disposto a ser o problema tem algo a ver com o shell interpretando sua expressão de nome como um glob. Tente fazer isso:

$ find . -name \*.css
    
por 22.03.2016 / 19:06
1

A parte inferior da página find é a seguinte gema:

NON-BUGS
   $ find . -name *.c -print
   find: paths must precede expression
   Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]

   This  happens  because *.c has been expanded by the shell resulting in find actually receiving a
   command line like this:

Portanto, *.css foi aparentemente expandido pelo Bash para style.css , porque esse arquivo existe no diretório atual. Sempre escape de * asteriscos em find !

$ find . -name \*.css
./style.css
./view/css/consultation.css
./view/css/lib/jquery.mCustomScrollbar.css
./view/css/lib/normalize.min.css
./view/css/lib/swiper.min.css
./view/css/style.css
./view/css/jquery.scombobox.min.css
./view/css/page-content.css
    
por 22.03.2016 / 19:06

Tags