Jawaban:
Jika bash tidak dapat menemukan kecocokan, itu akan meneruskan string literal ke aplikasi dengan *
s unexpanded. Sebagai contoh:
$ ls
foo
$ cat /tmp/test
echo $1
$ /tmp/test *foo*
foo
$ /tmp/test *bar*
*bar*
bash
diperluas *foo*
karena cocok, tetapi lulus *bar*
langsung karena tidak cocok. The nullglob
pilihan akan memberitahu bash untuk mengatasi pola yang tidak cocok dengan string kosong sebagai gantinya:
$ shopt -s nullglob
$ /tmp/test *bar*
$
zsh: no matches found
.
no_nomatch
memicu perilaku ini.
find . -name *foo*
denganfind . -name '*foo*'
itu akan memungkinkan cocok wildcard berfungsi seperti yang diharapkan.