Ви можете передавати аргументи до сценарію gnuplot з версії 5.0 із прапором -c
. Доступ до цих аргументів здійснюється через змінні ARG0
до ARG9
, ARG0
будучи сценарієм, і ARG1
до ARG9
рядкових змінних. Кількість аргументів задається ARGC
.
Наприклад, наступний скрипт ("script.gp")
#!/usr/local/bin/gnuplot --persist
THIRD=ARG3
print "script name : ", ARG0
print "first argument : ", ARG1
print "third argument : ", THIRD
print "number of arguments: ", ARGC
можна назвати як:
$ gnuplot -c script.gp one two three four five
script name : script.gp
first argument : one
third argument : three
number of arguments: 5
або в межах gnuplot як
gnuplot> call 'script.gp' one two three four five
script name : script.gp
first argument : one
third argument : three
number of arguments: 5
У gnuplot 4.6.6 та новіших версіях існує call
механізм з іншим (тепер застарілим) синтаксисом. Аргументи доступні через $#
, $0
, ..., $9
. Наприклад, той самий сценарій, який викладений вище, виглядає так:
#!/usr/bin/gnuplot --persist
THIRD="$2"
print "first argument : ", "$0"
print "second argument : ", "$1"
print "third argument : ", THIRD
print "number of arguments: ", "$#"
і він називається в gnuplot як (пам'ятайте, версія <4.6.6)
gnuplot> call 'script4.gp' one two three four five
first argument : one
second argument : two
third argument : three
number of arguments: 5
Зауважте, що немає змінної для імені сценарію, так $0
це перший аргумент, і змінні називаються в лапках. Немає можливості використовувати це безпосередньо з командного рядка, лише через хитрощі, як запропоновано @ con-fu-se.
if
для постачання за замовчуванням.if ! exists("filename") filename='default.data'