[sisyphus] find bash & zsh

Евгений Терешков =?iso-8859-1?q?evg=5Fkrsk_=CE=C1_inbox=2Eru?=
Вс Окт 14 22:11:52 MSD 2007


"Алексей Синицын" пишет:

>  Доброго времени суток.

   Доброго.

>  Это я чего-то не понимаю или кто-то из них глючит?

   Первое. :-)

>  Или find и должен работать с разными оболочками по разному и можно-ли
> как-то подружить find и zsh?

  Нет. Они и так дружат.

> 20:48 al на wind Bach/vol_01_organ/audio $ find -name .m3u

  И? Есть где-то файлы с именем ".m3u"?

> 20:48 al на wind Bach/vol_01_organ/audio $ find -name playlist.m3u
> ./bwv599/playlist.m3u
> ./bwv645/playlist.m3u
> ./bwv709/playlist.m3u
> ./bwv529/playlist.m3u
> ./bwv686/playlist.m3u
> ./bwv526/playlist.m3u
> ./bwv530/playlist.m3u
> ./bwv528/playlist.m3u
> ./bwv552/playlist.m3u
> ./bwv651/playlist.m3u
> ./bwv525/playlist.m3u
> ./bwv720/playlist.m3u
> ./bwv527/playlist.m3u

  Всё верно.

> 20:48 al на wind Bach/vol_01_organ/audio $ find -name *.m3u
> zsh: no matches found: *.m3u

  Всё верно. Шелл сделал то, что должен - раскрыл glob. Поскольку настроен
  в таких случаях обламываться (из коробки или вручную - не суть, помню -
  есть такая настройка), то и отваливается.

  Надо было или -name '*.m3u' или -name \*.m3u (или -iname везде) или
  сказать в начале строки уточнение "noglob ".

  Чтобы было "как в bash искаропки", надо, ИМХО, сделать в zsh
  ======================
  unsetopt csh_null_glob
  setopt no_nomatch
  ======================

  У меня например так:

  ~$ GR find .zalias
  alias find="noglob find"

> 20:49 al на wind Bach/vol_01_organ/audio $ bash
> bash-3.1$ pwd
> /home/Alex/Discs/shuttle/mus/Bach/vol_01_organ/audio
> bash-3.1$  find -name *.m3u
> ./bwv599/playlist.m3u
> ./bwv645/playlist.m3u
> ./bwv709/playlist.m3u
> ./bwv529/playlist.m3u
> ./bwv686/playlist.m3u
> ./bwv526/playlist.m3u
> ./bwv530/playlist.m3u
> ./bwv528/playlist.m3u
> ./bwv552/playlist.m3u
> ./bwv651/playlist.m3u
> ./bwv525/playlist.m3u
> ./bwv720/playlist.m3u
> ./bwv527/playlist.m3u
> bash-3.1$

Не думаю, чтоб это было "верно" или "неверно" со стороны bash, не знаю, им
не пользовался давно. Скорее всего, просто удобная настройка из коробки.

-- 
С уважением, Терешков Евгений.
Jabber ID: evg на altlinux.org, evg_krsk на jabber.ru


Подробная информация о списке рассылки Sisyphus