在 Linux 上安装和使用 Nu Shell | macOS |
欢迎阅读我们在 Linux 上安装 Nu Shell 的指南 | macOS 系统。 Nushell 项目的目标是采用 Unix shell 哲学(通过管道将简单命令连接在一起),并将其带入现代开发风格。 Nu Shell 致力于实现以下目标:
- 创建最灵活、跨平台且具有现代感的 shell。
- 使您能够将命令行应用程序与了解不同数据类型结构的 shell 混合搭配
- 现代 CLI 应用程序提供的具有一定程度 UX 优化的 shell
在 Linux/macOS 系统上运行 Nu Shell 的最简单、最快捷的方法是从 crates.io 安装,或从我们的 Github 发布页面下载预构建的二进制文件。
对于任何 Linux 发行版来说,最理想的安装方法都是二进制方法。我们将使用curl工具获取最新版本,下载并解压文件以获得Nushell二进制文件。
第1步:安装开发者工具
安装所需的开发者工具:
Ubuntu/Debian:
sudo apt update
sudo apt install pkg-config libssl-dev -y
sudo apt install libxcb-composite0-dev libx11-dev -y
基于 RHEL 的系统:
sudo yum install libxcb openssl-devel libX11-devel -y
macOS:
brew install openssl cmake
步骤2:在Linux上安装Nushell
下载最新的二进制存档文件:
cd /tmp
curl -s https://api.github.com/repos/nushell/nushell/releases/latest | grep browser_download_url | cut -d '"' -f 4 | grep '\linux.tar.gz' | wget -i -
解压下载的文件:
tar -xvf nu_*_linux.tar.gz
将 nu 二进制文件复制到您的路径:
sudo mv nu_*_linux/nushell-*/nu /usr/local/bin
Nu 将在启动时在您的 PATH 中查找插件。虽然 nu 在没有它们的情况下也有一些功能,但要获得完整的功能,您需要将它们复制到您的路径中,以便可以加载它们。
sudo mv nu_*_linux/nushell-*/nu_plugin* /usr/local/bin
Fedora 用户可以使用 COPR 存储库来安装 Nushell:
sudo dnf copr enable atim/nushell -y && sudo dnf install nushell -y
步骤 3:在 macOS 上安装 Nushell
对于二进制安装方法,请使用brew:
brew install nushell
从二进制文件手动安装
在 macOS 系统上运行以下命令来下载最新版本的 Nushell:
cd /tmp
curl -s https://api.github.com/repos/nushell/nushell/releases/latest | grep browser_download_url | cut -d '"' -f 4 | grep '\macOS.zip' | wget -i -
解压下载的文件:
unzip nu_*_macOS.zip
将 nu 二进制文件复制到您的路径:
sudo mv nu_*_macOS/nushell-*/nu /usr/local/bin
也复制 Nu 插件:
sudo mv nu_*_macOS/nushell-*/nu_plugin* /usr/local/bin
步骤 4:将用户 Shell 设置为 Nushell
我们将创建一个名为 techviewleo 的新用户
$ sudo adduser techviewleo
Adding user `techviewleo' ...
Adding new group `techviewleo' (1000) ...
Adding new user `techviewleo' (1000) with group `techviewleo' ...
Creating home directory `/home/techviewleo' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for techviewleo
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] y
将用户默认 shell 设置为 Nu:
sudo chsh -s /usr/local/bin/nu techviewleo
确认用户shell:
$ getent passwd techviewleo
techviewleo:x:1000:1000:,,,:/home/techviewleo:/usr/local/bin/nu
切换到创建的用户帐户:
$ su - techviewleo
Password:
Welcome to Nushell 0.28.0 (type 'help' for more info)
/home/techviewleo>
测试 ls 命令在 Nushell 中的工作方式:
$ home/techviewleo> ls /tmp/
───┬────────────────────────────────────────────────────────────────────────────────────────┬──────┬────────┬────────────
# │ name │ type │ size │ modified
───┼────────────────────────────────────────────────────────────────────────────────────────┼──────┼────────┼────────────
0 │ /tmp/snap.lxd │ Dir │ 4.1 KB │ 2 days ago
1 │ /tmp/systemd-private-15969aaa8a724354bff192a746aaa953-systemd-logind.service-ny7rmg │ Dir │ 4.1 KB │ 2 days ago
2 │ /tmp/systemd-private-15969aaa8a724354bff192a746aaa953-systemd-resolved.service-QsdDqg │ Dir │ 4.1 KB │ 2 days ago
3 │ /tmp/systemd-private-15969aaa8a724354bff192a746aaa953-systemd-timesyncd.service-OKOxKf │ Dir │ 4.1 KB │ 2 days ago
───┴────────────────────────────────────────────────────────────────────────────────────────┴──────┴────────┴────────────
macOS 上的命令输出:
/Users/jkmutai> cd Parallels/
/Users/jkmutai/Parallels> ls
───┬────────────────┬──────┬───────┬──────────────
# │ name │ type │ size │ modified
───┼────────────────┼──────┼───────┼──────────────
0 │ CentOS 8.pvm │ Dir │ 384 B │ 1 month ago
1 │ Ubuntu.pvm │ Dir │ 480 B │ 2 weeks ago
2 │ Windows 10.pvm │ Dir │ 416 B │ 2 months ago
───┴────────────────┴──────┴───────┴──────────────
仅列出目录:
ls | where type == Dir
您可以从官方文档页面了解有关 Nushell 的更多信息。最好的起点是对 Nu 的介绍。
关于 Shell 的类似指南:
- Zsh、Bash 和 Fish 的最佳终端 Shell 提示
- 在 Windows 上安装 posh-git – Git 的 PowerShell 环境
- 如何安装 Bash/Zsh/Fish 的 Starship Shell 提示