Khususnya tentang git (gitignore, gitattributes, dan perintah yang mengambil nama file):jika polanya tidak mengandung garis miring, *
wildcard akan cocok dengan deep. Jika memang mengandung garis miring, git akan memanggil fnmatch dengan FNM_PATHNAME
bendera, dan wildcard sederhana tidak akan cocok dengan garis miring. **
untuk mencocokkan deep tidak didukung. Mungkin pencocokan mendalam semacam ini dapat didukung lebih luas dengan FNM_STARSTAR
baru flag, dan implementasi di glibc, gnulib, dan tempat lain.
Jika Anda ingin menindaklanjuti semua file yang dikembalikan oleh find, daripada hanya mencantumkannya, Anda dapat menyalurkannya ke xargs:
find <directory> -type f | xargs ls
Tapi ini hanya untuk perintah yang tidak memiliki tanda rekursif.
Di Bash 4, dengan shopt -s globstar
, dan zsh Anda dapat menggunakan **/*
yang akan menyertakan semuanya kecuali file tersembunyi. Anda dapat melakukan shopt -s dotglob
di Bash 4 atau setopt dotglob
di zsh untuk memasukkan file tersembunyi.
Di ksh, set -o globstar
memungkinkannya. Menurut saya tidak ada cara untuk memasukkan file dot secara implisit, tapi menurut saya **/{.[^.],}*
berfungsi.