Se o seu script é do tipo #!/bin/sh
ou é apenas .sh
, isso explicaria porque o ${find_parameters[@]}
não funciona em um sistema Debian que usa um interpretador dash
shell padrão que não implementa a extensão do nome do tipo ${array[@]}
.
Também posso ver como o argumento -path ~/FileSniper*
pode resultar em resultados indesejados - e o mesmo vale para ~/*
. Conforme escrito, essas são expansões de shell - não find
de expansões. Os operandos find [ ...paths... ]
nunca se expandem e, portanto, ~/*
- se for realmente o que você quer - está tão correto quanto possível, mas -path ~/FileSniper*
é expandido para quaisquer resultados que possam ser obtidos pelo shell pai antes é usado como padrão por find
. E se não corresponder a ~/
é um ponto discutível porque *
permanecerá como está, mas se fizer ele não funcionará mais como o padrão que você pretende.
Você deve citá-lo, provavelmente: find ... -path ~/FileSniper\*
a menos que você queira procurar literalmente ~
til, caso em que você deve citar isso também.