Gostaria de saber se é possível escrever um script compatível com POSIX que crie um find
comando a partir de seus argumentos.
A maneira de fazer isso para Bash (e zsh) é explicada neste outro artigo do SE, mas usando recursos específicos do bash (ou zsh).
A questão original era conseguir construir um comando find como este:
find -iname '*foo*' -o -iname '*bar*' -o -iname '*blah*'
A resposta está no seguinte código de script Bash:
findany() {
local args=('-iname' "*$1*")
shift
while [ "$#" -gt 0 ]; do
args+=('-o' '-iname' "*$1*")
shift
done
find . "${args[@]}"
}
É possível fazer algo semelhante em um script compatível com POSIX ?