Next Generation Shell (NGS) 是一种现代编程语言,专注于系统工程。
NGS 是一个借鉴了其他语言精选功能和原创功能的独特组合。NGS 是以日常系统工程任务为中心从头开始构建的。有一种方法可以认为 NGS 是 bash 加数据结构加更好的语法和错误处理。
用 NGS 编写 AWS 的脚本要容易得多,为此专门有一个 Declarative Primitives style 库。如果你在 NGS 中需要额外的功能或语法,只要是用于系统工程任务,就很有可能被包含在该语言中。
功能:
-
涵盖了常见的系统工程脚本方面
-
retry
function -
环境变量控制
debug
function -
log
function,用于记录整齐的日志 -
status
function,用于语义状态
-
-
简单的流程处理
- 用于重定向和管道的 bash 语法的小子集
- 对进程退出代码的智能和可定制处理(包括抛出异常)
- 运行命令和解析输出的语法
-
过程控制
p=$(my_process &); ... p.kill()
-
结构化数据操作。虽然解析文本仍然是必要的,但当今的许多任务都包括与 API 对话。API 返回结构化数据。
-
示例函数:
map
,filter
,reject
,mapk
- 映射 hash键,mapv
- 映射 hash值,group
-将值分组为 hash,fetch
- 读取和解析文件。 -
collector
工具让您可以轻松地将结果累积到数组、散列或任何用户定义的类型中。 -
Table
用于优雅地显示表格数据 -
Stats
类型计数出现 -
Box
,FullBox
和EmptyBox
类型表示其中有或没有数据的容器。
-
示例函数: