■
$* — бұл айнымалыда тапсырмаға берілген командалық жолақтың
барлық параметрлері сақталады. Бұл айнымалыда барлық
параметрлер бір жақшаға алынған, яғни $* = "$1 $2 $3
■
$@ — бұл айнымалыда тапсырмаға берілген командалық жолақтың
барлық параметрлері сақталады. Бұл айнымалыда әр берілген
параметр жеке-жеке жақшаға алынған, яғни $@ = "$1" "$2" "$3" ...;
■
$0 — бұл айнымалыда орындалып жатқан тапсырманың файл атауы
сақталады. Оның көмегімен файл атауына тәуелді емес тапсырманы
рекурсивті шақыруды ұйымдастыруға болады. Басқаша айтқанда,
шақырту әрқашан сол тапсырманы оның атауына тәуелсіз
рекурсивті шақырады.
exec $0
жүйелік айнымалыларды пайдалану мысалы ретінде BASH тілінде
келесі тапсырманы келтіреміз:
#!/bin/bash
while [ "$1" != "" ] ; do
echo $@
shift
done
Айнымалыдағы тапсырма echo команданың көмегімен оған
берілген барлық параметрлерді шығарады. Әр шығарған сайын
параметрлер терезесі shift командасының көмегімен жылжиды.
Тапсырманың орындалуы параметрлер тізімі таусылғанда аяқталады,
яғни shift команданың соңғы орындағаннан кейін бірінші параметр бос
жолаққа тең болып қалады (Қолданылған командалар туралы
толығырақ 2-қосымшадан қараңыз).
Тапсырманы орындау нәтижесінде экранға келесі шығатын болады:
$ ./test.sh 1 2 3 4 5
1 2 3 4 5
2 3 4 5
3 4 5
4 5
5
Әр жаңа айналым итеративті жүйелік айнымалының $@ мәні
параметрлер терезесінің ағымдағы орналасуына сай өзгеретінін және
қолжетімді параметрлердің жалпы саны біртіндеп азаятынын көруге
болады.