Nushell a new cross-platform command shell

nushell

Recientemente the first version of the nushell command shell was published, It combines the capabilities of Power Shell and the classic Unix shell.

Nushell uses the usual pipeline system for Unix users in the format «command | filters | output controller ». By default, the output is formatted with the automatic view command, which uses a table format, but it is also possible to use commands to display binary data and information in a tree view.

About Nushell

The strength of nushell is the ability to manipulate structured dataas a comprehensive set of instructions for filtering structured data is provided to you They allow you to filter rows, sort by columns, summarize data, perform simple calculations, use value counters, and convert the output to CSV, JSON, TOML, and YAML formats.

For unstructured data (text), it provide instructions for dividing into columns and rows based on delimiting characters. u is inspired by projects such as PowerShell, functional programming languages, and modern cli tools.

The shell allows structuring the output of various commands and the content of files and apply arbitrary filters, which are issued using a unified syntax that does not require studying the command line options for each specific command.

Eg nushell allows to use constructs like «ls | where size> 10kb "and" ps | where cpu> 10«, Which will only generate files larger than 10Kb and processes that used more than 10 seconds of CPU resources.

Instead of using the files and services as raw text streams, nushell treats each input as structured. For example, when you enumerate the contents of a directory, what you get is a list of objects, where each object represents an item in that directory. These values ​​can be piped through a series of steps, in a series of commands called 'pipeline'.

Nushell uses various plugins to structure the data, that parse the output of specific commands and file types. Similar plugins are proposed for the commands cd, ls, ps, cp, mkdir, mv, date, rm (the prefix "^" can be used to call native commands, for example, calling "^ ls" will start the utility ls system).

There are also specialized commands, like "open", to display information about the selected file as a table. For JSON, TOML, and YAML formats, automatic parsing is supported

The code is written in Rust and distributed under the MIT license. The project was initially developed as cross-platform and supports work on Windows, macOS and Linux. To expand the functionality, plugins can be used, the interaction of which is carried out according to the JSON-RPC protocol.

How to install nushell on Linux?

For those interested in being able to install nushell on their Linux distribution, They can do so by following the instructions we share below.

For those who are Arch Linux, Manjaro, Arco Linux users or any other Arch Linux-based distribution can install nushell from the AUR repositories.

They should only have an AUR wizard installed and the repository enabled. If you do not have it, you can visit the following article where we recommend some assistants.

In a terminal they only have to type the following command:

yay -S nushell

Now for the rest of the Linux distributions they have to perform the installation with the help of the Rust package manager. If you do not have it in a terminal you must type the following.

curl https://sh.rustup.rs -sSf | sh 

A series of options will open to us in our terminal and we must answer appropriately. You must press 1 to continue the installation with the default values, which is recommended for most.

Once finished we can configure our current shell to start working:

source $HOME/.cargo/env 

To install nushell via cargo, just type the following command in the terminal:

And that's it, you can use this shell on your system.


The content of the article adheres to our principles of editorial ethics. To report an error click here!.

A comment, leave yours

Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.

  1.   Jorge Lopez said

    And what is the command to install nushell with charge?