概要
WolframKernel
WolframKernel -wstp
WolframKernel -run initcode
说明
WolframKernel
运行独立的 Wolfram 语言内核. 独立内核会话一般从设备读取输入(典型的键盘或一个 WSTP 连接),计算表达式并把结果打印到设备(一般是屏幕或一个 WSTP 连接). 在某些系统中,WolframKernel
和 wolfram
是同样的程序.
更多信息
启动
当给出 -wstp,任何一般由
WSOpenArgcArgv 理解的
WSTP 选项也会在指令行给出.
在独立窗口启动内核的平台,例如: Windows,在 WSTP 模式中窗口被最小化. 添加 -noicon
会另外禁止在操作系统任务栏中的输入.
内核会读取环境变量 的值并把它的值追加到任何指令行参数的值.
只适用于 Windows 的参数 -threadpriority 选项可以是 、、、 或 ,默认值是 . 正数表明内核比正常更高的优先级运行,负数表明低于正常优先级.
如果密码文件使用 -pwfile 指定,则首先尝试它的密码
. 如果没有找到有效的密码,则尝试标准系统位置中的密码文件.
当给出 -noprompt,变量
$BatchOutput 会设为 True. 另外,启动时,省略 In[] 和 Out[] 标签和标语,Wolfram 语言产生所有 InputForm 的输出,其中,PageWidth 选项有效地设为 Infinity.
Wolfram 语言脚本
如果给出 -script 指令行选项,内核执行来自批处理、或脚本模式中的 指令然后终止.
在脚本模式,内核不打印标语并且没有 In[] 或 Out[] 标签,并产生所有 InputForm 输出,其中,PageWidth 选项有效设置为 Infinity.
范例
交互式操作
$ WolframKernel
Wolfram {RelatedLinks-NeuralNetRepository.png}.{RelatedLinks-NeuralNetRepository.png} Kernel for {RelatedLinks-NeuralNetRepository.png}
Copyright 1988-{RelatedLinks-NeuralNetRepository.png} Wolfram Research, Inc.
In[1]:= 2+2
Out[1]= 4
In[2]:=
WSTP
$ WolframKernel -wstp -linkcreate
Link created on: mvg8t_shm
$ WolframKernel -noicon -wstp -linkcreate
Link created on: z5hmx_shm
指令行的初始化
$ WolframKernel -run 'AppendTo[$Path, "/favorite/path"]'
Wolfram {RelatedLinks-NeuralNetRepository.png}.{RelatedLinks-NeuralNetRepository.png} Kernel for Mac OS X ARM (64-bit)
Copyright 1988-{RelatedLinks-NeuralNetRepository.png} Wolfram Research, Inc.
In[1]:= Last[$Path]
Out[1]= /favorite/path
In[2]:=
通过添加明确的 Exit[],-run
选项可用于计算表达式并退出:
$ WolframKernel -run 'Print[\"Hello World\"];Exit[]'
Wolfram {RelatedLinks-NeuralNetRepository.png}.{RelatedLinks-NeuralNetRepository.png} Kernel for Linux x86 (64-bit)
Copyright 1988-{RelatedLinks-NeuralNetRepository.png} Wolfram Research, Inc.
Hello World
从文件初始化
把 custom_init.wl
追加到初始化文件的标准列表:
$ WolframKernel -initfile custom_init.wl
$ WolframKernel -noinit
$ WolframKernel -noinit -initfile custom_init.wl
其他范例
$ WolframKernel -pwfile "/path/to/mathpass"
$ WolframKernel -script test.wl
$ WolframKernel -script test.wl -noicon
文件
$BaseDirectory/Kernel/ init.m | |
$UserBaseDirectory/Kernel/ init.m |
$BaseDirectory/Licensing/mathpass | |
$UserBaseDirectory/Licensing/mathpass | |
$InstallationDirectory/Configuration/Licensing/mathpass |
WOLFRAM 语言变量
$BatchOutput
— -noprompt
是否已在命令行上给出.
$CommandLine
— 字符串列表给出使用的完整指令行.
$Epilog
— 内核退出时执行的指令.
$IgnoreEOF
— 即使给出了文件结束符,wolfram
是否应继续.
$PasswordFile
— 成功激活 wolfram
的密码文件的路径.
环境变量
WOLFRAMINIT
— 追加每个 WolframKernel 调用的附加参数
.
MATHKERNELINIT
— 如果没有定义 WOLFRAMINIT,则读取的旧变量
.
WOLFRAM_BASE
— 用于 $BaseDirectory 值的路径.
WOLFRAM_USERBASE
— 用于 $UserBaseDirectory 值的路径.