Nu 编程
本章更详细地介绍了作为编程语言的 Nushell。 每个主要的语言特性都有自己的章节。
就像大多数编程语言允许你定义函数一样,Nushell 使用自定义命令来实现这个目的。
你可能习惯于使用其他 shell 的别名。 Nushell 的别名工作方式类似,是编程语言的一部分,而不仅仅是一个 shell 功能。
常见的操作,如加法或正则表达式搜索,可以使用运算符来完成。 并非所有操作都支持所有数据类型,当出现不匹配时,Nushell 会确保让你知道。
你可以将中间结果存储到变量中。 变量可以是不可变的、可变的或解析时常量。
最后三个部分旨在组织你的代码:
脚本是最简单的代码组织形式:你只需将代码放入一个文件并加载它。 但是,你也可以使用“特殊”的 main
命令将脚本作为带有命令行签名的独立程序运行。
通过模块,就像在许多其他编程语言中一样,可以从更小的部分组合你的代码。 模块让你定义一个公共接口与私有命令,你可以从中导入自定义命令、别名和环境变量。
覆层(Overlays)建立在模块之上。 通过定义一个覆层(overlay),你将模块的定义引入其自己的可交换“层”,该层应用于其他覆层之上。 这使得可以实现诸如激活虚拟环境或用自定义变体覆盖默认命令集等功能。
如果你想证明你的可重用代码完美无缺,标准库还有一个测试框架。