WolframScript 让 Wolfram 语言代码可以在任何终端运行,无需依赖系统中是否拥有 Wolfram 内核。
利用 WolframScript 用户可以决定在何处和如何运行自己的 Wolfram 语言代码。连同可配置内核和云端设置,WolframScript 云集了用于各种任务的便捷函数,其中包括用命令行输入运行纯函数,调用云端 API 和将数据导出为 Wolfram 支持的各种格式。现在您可以在 Wolfram Cloud 用 wolframscript -cloud 或在 Unix shell 脚本用 #!/usr/bin/env wolframscript -cloud 运行代码。
范例
$ wolframscript -code 2+2
4
$ wolframscript -cloud -code 2+2
4
脚本文件
#!/usr/bin/env wolframscript
Print[2+2]
$ ./file.wls
4
#!/usr/bin/env wolframscript -cloud
Print[2+2]
$ ./file.wls
4
#!/usr/bin/env wolframscript
Print[ToExpression[$ScriptCommandLine[[2]]]^2]
$ ./file.wls 5
25
#!/usr/bin/env wolframscript -function -signature City City
Print[GeoDistance[#1, #2]]&
$ ./file.wls "Champaign, IL" "Oxford, England"
Quantity[4010.4812837526256, Miles]
特点
WolframScript 引入了各种命令行交互来满足您的脚本需求。
用命令行运行代码
在命令行中利用 -code 参数可以将代码由 WolframScript 直接传送至命令行,从而让用户可以立即将输入在文件中显示或重新定向。
从文件中运行代码
用 -file 参数可以从 Wolfram 语言程序包直接运行代码。
创建可执行脚本
WolframScript 可作为脚本解释器使用,允许在支持的系统中用 Unix #! 语法书写脚本。
从命令行运行函数
可使用来自命令行环境的数据和参数来定义和执行纯函数 ,以轻松进行 ad-hoc 序列操作。
与输入流的简单交互
$ScriptInputString 符号捕获进入 WolframScript 的数据流,从而可轻松地一次性或逐行迭代处理数据。
使用基于云端的计算
WolframScript 现在能够使用 Wolfram Cloud 执行代码。 可通过公用的 Wolfram Cloud 或 私有云进行配置。
直接访问云端 API
WolframScript 可使用 APIFunction 解析参数输入并直接将数据发送至在 Wolfram Cloud 或私有云存储的 API。
丰富的导出格式
WolframScript 可使用 -export 参数将其数据转换和输出至任何 Wolfram 语言支持的导出格式。
Windows 环境支持
WolframScript 在 Windows 中有完整特性,支持基本的 Windows 命令 shell、MSYS 或 Cygwin。
自动内核检测
WolframScript 将自动选择安装于用户系统(Windows、Mac)中的最新 Wolfram 内核。
技术资讯
- WolframScript 支持运行 Windows、Mac 或 Linux 的 x86 和 x64 系统。可对 Linux 系统提供 ARM 支持。
- 需要有 Wolfram Cloud 账户从而利用 WolframScript 的基于云端的特性。
- 在不同平台使用 WolframScript 需要不同转义语义(escaping semantics)。
- WolframScript 与 Wolfram 语言版本 11 及更高版本一起发布。