大数跨境
0
0

一款开源的 Shell 装逼神器,真香!

一款开源的 Shell 装逼神器,真香! 终码一生
2021-08-21
0
导读:赶快试试吧!

点击“终码一生”,关注,置顶公众号

每日技术干货,第一时间送达!



1

前言

 

今天,我要给大家介绍一个生产力工具(装逼神器)Shell,Nushell,它是用Rust写的,安全性提高的同时,Bug率也降低了,NuShell 专注于实现以下目标:


  • 创建具有现代感的灵活的跨平台Shell

  • 允许你将命令行应用程序与可理解数据结构的Shell进行混合和匹配

  • 具有现代命令行应用程序提供的用户体验优化



目前,NuShell 已经在Github上标星13.9K,累计分支631(详情:github.com/nushell/nushell)


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


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


 

2

安装开发工具


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


苹果系统:


brew install openssl cmake



3

在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


将二进制文件复制到您的 PATH:


sudo mv nu_*_linux/nushell-*/nu /usr/local/bin


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


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


 

4

在 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二进制文件复制到你的PATH:


sudo mv nu_*_macOS/nushell-*/nu /usr/local/bin


复制Nu插件:


sudo mv nu_*_macOS/nushell-*/nu_plugin* /usr/local/bin


 

5

在Docker运行Nushell 


如果你是windows用户,那么,建议你直接在Docker运行体验就好了,几句命令就搞定了,命令如下:


docker run -it quay.io/nushell/nu:latest



6

将用户 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


切换到创建的用户帐户:


$ 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>


运行效果展示:



GitHub:https://github.com/nushell/nushell

文章来源:https://github.com/nushell/nushell


PS:防止找不到本篇文章,可以收藏点赞,方便翻阅查找哦。 


往期推荐



告别 Jedis,事实证明这个更牛逼!

面试官:对并发熟悉吗?谈谈你对 Java 中常用的几种线程池的理解

Java 中 new 关键字在虚拟机中是如何执行的?

Redis 大数据量(百亿级)Key存储需求及解决方案

面试官:说说 Nginx 如何限流?

SpringBoot 实现登录拦截器


【声明】内容源于网络
0
0
终码一生
开发者聚集地。分享Java相关开发技术(JVM,多线程,高并发,性能调优等),开源项目,常见开发问题和前沿科技资讯!
内容 1876
粉丝 0
终码一生 开发者聚集地。分享Java相关开发技术(JVM,多线程,高并发,性能调优等),开源项目,常见开发问题和前沿科技资讯!
总阅读333
粉丝0
内容1.9k