У багатьох питаннях та навчальних посібниках бачу, що я можу отримати доступ до аргументів командного рядка в скриптах bash двома способами:
$ ~ >cat testargs.sh
#!/bin/bash
echo "you passed me" $*
echo "you passed me" $@
Результати:
$ ~> bash testargs.sh arg1 arg2
you passed me arg1 arg2
you passed me arg1 arg2
У чому різниця між $*
і $@
?
Коли треба використовувати перше, а коли друге?
echo "something $@"
як помилку