Skip to main content

Julia Evans

« back to all TILs

`**` works for globbing in the shell

I just learned that globbing in fish is WAY more powerful than I realized, like:

  • instead of find . -name '*.md' I can just do ls **.md
  • instead of find . -type d -name ‘*blah*’, I can just ls -d **blah*/

A couple of notes:

  • apparently you can do this in zsh or bash (with bash’s extended globbing) too, though it might be **/*.md instead of **.md
  • as usual globs don’t include dotfiles so it’s not exactly the same as running find

Learned this from this page from 2004 on shells which mentioned offhand that “under zsh, [globbing] is so powerful, it almost makes find redundant.”