Você pode passar argumentos para um script gnuplot desde a versão 5.0, com a flag -c. Esses argumentos são acessados pelas variáveis ARG0para ARG9, ARG0sendo o script e ARG1para ARG9variáveis de cadeia. O número de argumentos é dado por ARGC.
Por exemplo, o seguinte script ("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
pode ser chamado como:
$ gnuplot -c script.gp one two three four five
script name : script.gp
first argument : one
third argument : three
number of arguments: 5
ou dentro do gnuplot como
gnuplot> call 'script.gp' one two three four five
script name : script.gp
first argument : one
third argument : three
number of arguments: 5
No gnuplot 4.6.6 e versões anteriores, existe um callmecanismo com uma sintaxe diferente (agora obsoleta). Os argumentos são acessados através $#, $0, ..., $9. Por exemplo, o mesmo script acima se parece com:
#!/usr/bin/gnuplot --persist
THIRD="$2"
print "first argument : ", "$0"
print "second argument : ", "$1"
print "third argument : ", THIRD
print "number of arguments: ", "$#"
e é chamado dentro do gnuplot como (lembre-se, versão <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
Observe que não há variável para o nome do script, assim $0como o primeiro argumento, e as variáveis são chamadas entre aspas. Não há como usar isso diretamente da linha de comando, apenas através de truques como o sugerido por @ con-fu-se.
ifpara fornecer padrões.if ! exists("filename") filename='default.data'