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.