El comodín de OS X Terminal no funciona para algunas rutas

El comodín de OS X Terminal no funciona para algunas rutas

Vale, esto es raro, ojalá alguien aquí pueda explicar lo que está pasando.

Estoy usando OS X 10.9.4 y quiero enumerar archivos en un directorio (y filtrarlos usando *)

Quiero buscar archivos zip en los directorios de Descargas de mi directorio de usuario y el directorio de mi hijo.

Esto muestra todos los archivos, incluidos los que terminan en .zip: sudo ls /Users/Jamie/Downloads/
pero cuando intento filtrarlo: sudo ls /Users/Jamie/Downloads/*zip
apareceNo such file or directory

¿Pero ese mismo comando funciona bien en mi directorio?sudo ls /Users/Hamish/Downloads/*zip

De hecho, incluso esto genera el No such file or directoryerror en su camino pero no en el mío:sudo ls /Users/Jamie/Downloads/*

Respuesta1

La expansión del nombre de ruta se produce en el momento en que ejecuta el comando, por lo que debe expandirse antes de ejecutar Sudo.

Puedes instanciar un nuevo shell dentro de sudo con:sudo sh -c "ls /Users/Jamie/Downloads/*.mp3"

Respuesta2

O puede utilizar greppara filtrar sus resultados. Entonces

$ sudo ls -l /Users/other/Library/Keychains/*keychain
ls: /Users/other/Library/Keychains/*keychain: No such file or directory

fallará pero el uso grepfuncionará

 sudo ls -l /Users/other/Library/Keychains|grep .keychain
 -rw-r--r--   1 other staff    48K Jan 31 18:27 login.keychain

Además, greple permite buscar varios elementos con la -eopción.

 $ sudo ls -laRh /Users/other/Library/Logs|grep -e Finder -e Google
  -rw-r--r--   1 other  staff    18K Jan 31 18:27 GoogleSoftwareUpdateAgent.log
  -rw-------   1 other  staff    56K Jan 31 18:27 .Finder_2014-06-25-165714.crash.plist
  -rw-------@  1 other  staff    52K Jan 31 18:27 Finder_2014-06-25-165714.crash

Espero que esto ayude.

información relacionada