Я не вполне знаю, почему Вы только не используете $1$ 2 и т.д. но.. Это может удовлетворить Вашим потребностям.
$ script "ed it" "cat/dog" 33.2 \D
echo "-------- Either use 'indirect reference'"
for ((i=1;i<=${#@};i++)) ;do
# eval echo \"\$$i\" ..works, but as *pepoluan*
# has pointed out: echo "${!i}" ..is better.
echo "${!i}"
done
echo "-------- OR use an array"
array=("$@")
for ((i=0;i<${#array[@]};i++)) ;do
echo "${array[$i]}"
done
echo "-------- OR use 'set'"
set "$@"
echo "$1"
echo "$2"
echo "$3"
echo "$4"
вывод
-------- Either use 'indirect reference'
ed it
cat/dog
33.2
D
-------- OR use an array
ed it
cat/dog
33.2
D
-------- OR use 'set'
ed it
cat/dog
33.2
D
set
работы чего-либо, что следует за ним, для создания 1$, 2$ и т.д. Это, конечно, переопределит исходные значения, поэтому просто знать об этом.
Можно попытаться обеспечить guest
как имя пользователя и никакой пароль.
Мне кажется, что иногда Ubuntu забывает пробовать гостевыми учетными данными.