Use "$@"
.
#!/bin/sh
trickle -u 80 ~/bin/s3cmd.py "$@"
Não há diferença funcional entre $*
e $@
quando se está passando por uma divisão implícita de palavras (quase sempre quando não é citada). Quando citado, no entanto, $*
é uma única string separada pelo primeiro caractere de IFS
e "$@"
é uma matriz real (o que você deseja).
$ set foo bar baz
$ IFS=c
$ printf '%s\n' "$@"
foo
bar
baz
$ printf '%s\n' "$*"
foocbarcbaz