NuShell用起來真香!
今天我要給大家介紹一個生產(chǎn)力工具(裝逼神器)Shell,它叫Nushell,它是用Rust寫的,安全性提高的同時,Bug率也降低了,NuShell 專注于實現(xiàn)以下目標(biāo):
- 創(chuàng)建具有現(xiàn)代感的靈活的跨平臺Shell
- 允許你將命令行應(yīng)用程序與可理解數(shù)據(jù)結(jié)構(gòu)的Shell進(jìn)行混合和匹配
- 具有現(xiàn)代命令行應(yīng)用程序提供的用戶體驗優(yōu)化
目前,NuShell 已經(jīng)在Github上標(biāo)星13.9K,累計分支631(詳情:https://github.com/nushell/nushell)
在 Linux / macOS 系統(tǒng)上運(yùn)行 NuShell 的最簡單快捷的方法是從crates.io安裝 ,或從我們的Github 發(fā)布頁面下載預(yù)構(gòu)建的二進(jìn)制文件 。
對于任何 Linux 發(fā)行版來說,最理想的安裝方法是二進(jìn)制方法。我們將使用 curl 工具獲取最新版本,下載然后解壓縮文件以獲得 Nushell 二進(jìn)制文件。
第 1 步:安裝開發(fā)人員工具
- Ubuntu / Debian:
- sudo apt update
- sudo apt install pkg-config libssl-dev -y
- sudo apt install libxcb-composite0-dev libx11-dev -y
基于 RHEL 的系統(tǒng):
- sudo yum install libxcb openssl-devel libX11-devel -y
蘋果系統(tǒng):
- brew install openssl cmake
第 2 步:在 Linux 上安裝 Nushell
下載最新的二進(jìn)制歸檔文件:
- 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
將二進(jìn)制文件復(fù)制到您的 PATH:
- sudo mv nu_*_linux/nushell-*/nu /usr/local/bin
Nushell將在啟動時在您的 PATH中查找插件。雖然Nushell在沒有它們的情況下會有一些功能,但要獲得完整的功能,你需要將它們復(fù)制到您的路徑中,以便加載它們。
- sudo mv nu_*_linux/nushell-*/nu_plugin* /usr/local/bin
Fedora 用戶可以使用COPR repo安裝Nushell:
- sudo dnf copr enable atim/nushell -y && sudo dnf install nushell -y
第 3 步:在 macOS 上安裝 Nushell
對于二進(jìn)制安裝方法,請使用 brew:
- $ brew install nushell
從二進(jìn)制文件手動安裝
在 macOS 系統(tǒng)上運(yùn)行以下命令來下載 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二進(jìn)制文件復(fù)制到你的PATH:
- sudo mv nu_*_macOS/nushell-*/nu /usr/local/bin
復(fù)制Nu插件:
- sudo mv nu_*_macOS/nushell-*/nu_plugin* /usr/local/bin
第 4 步:將用戶 Shell 設(shè)置為 Nushell
創(chuàng)建一個名為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
將用戶默認(rèn) shell 設(shè)置為 Nu:
- sudo chsh -s /usr/local/bin/nu techviewleo
切換到創(chuàng)建的用戶帳戶:
- $ su - techviewleo
- Password:
- Welcome to Nushell 0.28.0 (type 'help' for more info)
- /home/techviewleo>
測試 ls 命令在 Nushell 中的工作方式:
- $ su - techviewleo
- Password:
- Welcome to Nushell 0.28.0 (type 'help' for more info)
- /home/techviewleo>
運(yùn)行效果展示:
最后附上nushell地址:https://github.com/nushell/nushell