NuShell真香警告用了都说好

2022-06-02 18:38:33 浏览数 (1)

今天在GitHub上看到一个Shell,看介绍显示效果很棒

它叫 Nushell,它是用 Rust 写的,安全性提高的同时,Bug 率也降低了,NuShell 专注于实现以下目标:

  • 创建具有现代感的灵活的跨平台 Shell
  • 允许你将命令行应用程序与可理解数据结构的 Shell 进行混合和匹配
  • 具有现代命令行应用程序提供的用户体验优化

在 Linux / macOS 系统上运行 NuShell 的最简单快捷的方法是从 crates.io 安装 ,或从我们的 Github 发布页面下载预构建的二进制文件 。

对于任何 Linux 发行版来说,最理想的安装方法是二进制方法。我们将使用 curl 工具获取最新版本,下载然后解压缩文件以获得 Nushell 二进制文件。

第 1 步:安装开发人员工具

  • Ubuntu / Debian:
代码语言:javascript复制
sudo apt update
sudo apt install pkg-config libssl-dev -y
sudo apt install libxcb-composite0-dev libx11-dev -y
  • 基于 RHEL 的系统:
代码语言:javascript复制
sudo yum install libxcb openssl-devel libX11-devel -y
  • MacOS系统:
代码语言:javascript复制
brew install openssl cmake

第 2 步:在 Linux 上安装 Nushell

  • 下载最新的二进制归档文件:
代码语言:javascript复制
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 -
  • 解压下载的文件:
代码语言:javascript复制
tar -xvf nu_*_linux.tar.gz
  • 将二进制文件复制到您的 PATH:
代码语言:javascript复制
sudo mv nu_*_linux/nushell-*/nu /usr/local/bin

Nushell 将在启动时在您的 PATH 中查找插件。虽然 Nushell 在没有它们的情况下会有一些功能,但要获得完整的功能,你需要将它们复制到您的路径中,以便加载它们。

代码语言:javascript复制
sudo mv nu_*_linux/nushell-*/nu_plugin* /usr/local/bin
  • Fedora 用户可以使用 COPR repo 安装 Nushell:
代码语言:javascript复制
sudo dnf copr enable atim/nushell -y && sudo dnf install nushell -y

第 3 步:在 macOS 上安装 Nushell

  • 对于二进制安装方法,请使用 brew:
代码语言:javascript复制
$ brew install nushell
  • 从二进制文件手动安装

在 macOS 系统上运行以下命令来下载 Nushell 的最新版本:

代码语言:javascript复制
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 -
  • 解压下载的文件:
代码语言:javascript复制
unzip nu_*_macOS.zip
  • 将nu二进制文件复制到你的 PATH:
代码语言:javascript复制
sudo mv nu_*_macOS/nushell-*/nu /usr/local/bin
  • 复制 Nu 插件:
代码语言:javascript复制
sudo mv nu_*_macOS/nushell-*/nu_plugin* /usr/local/bin

第 4 步:将用户 Shell 设置为 Nushell

  • 创建一个名为 techviewleo 的新用户:
代码语言:javascript复制
$ 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:
代码语言:javascript复制
sudo chsh -s /usr/local/bin/nu techviewleo
  • 切换到创建的用户帐户:
代码语言:javascript复制
$ su - techviewleo
Password:
Welcome to Nushell 0.28.0 (type 'help' for more info)
/home/techviewleo>
  • 测试 ls 命令在 Nushell 中的工作方式:
代码语言:javascript复制
$ su - techviewleo
Password:
Welcome to Nushell 0.28.0 (type 'help' for more info)
/home/techviewleo>

原文地址:https://cloud.tencent.com/developer/article/1846309

0 人点赞