Shell的使用可以说是开发和运维人员必备的技能,比如CMD、PowerShell、bash等。但是,在实际使用时经常需要查阅命令的各种参数的说明,而且在命令输错时不能直观给出错误信息,这在一定程度上限制了使用者的效率。
那么今天给大家推荐一个全新的Shell: Nushell。
1.简介
Nushell 是一个新型的Shell。相比bash、PowerShell,它是具有现代感的灵活的跨平台 Shell,允许你将命令行应用程序与可理解数据结构的 Shell 进行混合和匹配,具有现代命令行应用程序提供的用户体验优化。
Nushell 还有着很友好的错误提示,以为它是在类型化的数据上操作,所以它能捕捉到其他 Shell 无法捕捉到的 Bug。当意外发生时,Nu 会告诉你确切的位置和原因:
此外,Nushell 还支持了IDE:VS Code。
2.安装
- macOS/Linux:
brew install nushell
- Windows:
winget install nushell
或者离线安装:
安装包下载地址:https://github.com/nushell/nushell/releases
3.使用
Nushell 安装完毕可以,打开终端,输入 nu 进入 Nushell。
Nushell 的核心概念就是数据,一切皆数据而且是结构化的,并以管道的方式将处理命令连接在一起。以 ls 命令为例,看到是这样的数据:
还可以将结果排序,例如:ls 串联了 sort-by 和 reverse命令。
当然,Nushell 的使用需要一些学习成本,需要认识其中的数据类型、数据加载、处理字符串、处理列表、处理表格等等。
若想查看命令索引,可使用命令
help commands
下图展示了部分命令索引:
4.其他高级用法
- 自定义命令:Nu 具备组合长管道的能力使你对数据和系统有很强的控制力,但它的代价是需要大量的键盘输入。不过理想情况下,你可以保存精心设计的管道以便反复使用。
- 配置第三方显示:可以安装Nerdfonts、Oh My Posh、Starship,获得更好的呈现效果。
- 自定义错误:你可以创建自己的自定义错误,包括:错误标题、错误信息的标签
- 插件系统:Nu 可以通过插件进行扩展,定制个性化功能。
- 自定义补全:自定义补全允许你混合使用 Nushell 的两个功能:自定义命令和补全。有了它们,你就能够创建支持对位置参数和标志(Flags)参数进行自动补全的命令。
下面是一个简单的自定义补全示例:
输入自定义命令的名称my-command,然后输入空格,再输入<tab>键,就可以触发我们的自动补全功能。自定义补全的工作方式与系统中的其他补全方式相同,比如允许你输入e,然后按<tab>键,得到 "eel" 自动补全。
更多热门有趣的开源项目,请访问Awesome Top:https://www.awesometop.cn