Thomas Köhler wrote:
Andy Isaacson wrote:I'm suprised to find that this expansion doesn't work for me: % ls *(@)/dry zsh: no matches found: *(@)/dry Am I doing something wrong, is this expected behavior, or is it a bug?You might want to try something like for i in *(@) ; do ls $i/dry 2>/dev/null ; done
Really, the correct general solution to this is to fall back on the tool that zsh's extended glob attempts to make obsolete: GNU find. Despite its arcane and annoying syntax, it's still occasionally useful. In this case, you want to say
find *(@) -name dry -exec ls '{}' ';'
--
    __                      __
   /  )                    /  )
  /--/ __. .__  ______    /  / __. , __o  _  _
 /  (_(_/|_/ (_(_) / (_  (__/_(_/|_\/ <__</_/_)_