Как вы получаете доступ к ARGV в Mathematica? - PullRequest
6 голосов
/ 02 ноября 2011

Я хотел бы написать сценарии командной строки в Mathematica, но я не могу найти функцию, подобную Argv[i_Integer]. (В противном случае документы фантастические.)

Ответы [ 3 ]

6 голосов
/ 02 ноября 2011

Кажется, что $ ScriptCommandLine - это переменная, которая вам понадобится для этого, при условии, что вы используете MathematicaScript для сценариев .Если вы используете math или MathKernel -script, это будет $ CommandLine .

Другие соответствующие обсуждения: довольно старый и один в MMA Toolbag .

4 голосов
/ 02 ноября 2011

$CommandLine работает для Mathematica, MathematicaScript, MathKernel и математики.

args.ma:

#!/usr/bin/env MathKernel -script

Print[$CommandLine]

Пример:

$ ./args.ma a b c
{"MathKernel", "-script", "./args.ma", "a", "b", "c"}
1 голос
/ 02 ноября 2011

Мне нравится передавать вещи с использованием переменных окружения:

http://reference.wolfram.com/mathematica/ref/Environment.html

...