Linux Adictos David Naranjo  

Nushell una nueva shell de comandos multiplataforma

nushell

Recientemente fue publicada la primera versión del shell de comandos nushell, que combina las capacidades de Power Shell y el shell clásico de Unix.

Nushell utiliza el sistema habitual de canalizaciones para usuarios de Unix en el formato “comando | filtros | controlador de salida”. De forma predeterminada, la salida se formatea con el comando de vista automática, que usa un formato de tabla, pero también es posible usar comandos para mostrar datos e información binarios en una vista de árbol.

Sobre Nushell

La fortaleza de nushell es la capacidad de manipular datos estructurados, ya que se proporciona un amplio conjunto de instrucciones para filtrar datos estructurados que le permiten filtrar filas, ordenar por columnas, resumir datos, realizar cálculos simples, usar contadores de valores y convertir la salida a formatos CSV, JSON, TOML y YAML.

Para datos no estructurados (texto), se proporcionan instrucciones para dividir en columnas y filas basadas en caracteres delimitadores.u se inspira en proyectos como PowerShell, lenguajes de programación funcionales y herramientas cli modernas.

El shell permite estructurar la salida de varios comandos y el contenido de los archivos y aplicar filtros arbitrarios, que se emiten utilizando una sintaxis unificada que no requiere estudiar las opciones de línea de comandos de cada comando específico.

Por ejemplo, nushell permite usar construcciones comols | where size> 10kb” y “ps | where cpu> 10“, que solo generará archivos de más de 10Kb y procesos que emplearon más de 10 segundos de recursos de la CPU.

En lugar de utilizar los archivos y servicios como flujos de texto sin procesar, nushell considera cada entrada como algo con estructura. Por ejemplo, cuando enumera el contenido de un directorio, lo que se obtiene es una lista de objetos, donde cada objeto representa un elemento en ese directorio. Estos valores se pueden canalizar a través de una serie de pasos, en una serie de comandos llamados ‘pipeline’.

Nushell utiliza varios complementos para estructurar los datos, que analizan la salida de comandos específicos y tipos de archivos. Se proponen complementos similares para los comandos cd, ls, ps, cp, mkdir, mv, date, rm (el prefijo “^” se puede usar para llamar a comandos nativos, por ejemplo, al llamar “^ ls” se iniciará la utilidad del sistema ls).

También hay comandos especializados, como “open”, para mostrar información sobre el archivo seleccionado en forma de tabla. Para los formatos JSON, TOML y YAML, se admite el análisis automático

El código está escrito en Rust y distribuido bajo la licencia MIT. El proyecto se desarrolló inicialmente como multiplataforma y admite el trabajo en Windows, macOS y Linux. Para expandir la funcionalidad, se pueden usar complementos, cuya interacción se lleva a cabo de acuerdo con el protocolo JSON-RPC.

¿Como instalar nushell en Linux?

Para quienes entes interesados en poder instalar nushell en su distribución de Linux, podrán hacerlo siguiendo las instrucciones que compartimos a continuación.

Para los que son usuarios de Arch Linux, Manjaro, Arco Linux o cualquier otra distribución de basada en Arch Linux pueden realizar la instalacion de nushell desde los repositorios de AUR.

Solamente deben contar con un asistente de AUR instalado y el repositorio habilitado. Si no cuentas con ello puedes visitar el siguiente articulo donde te recomendamos algunos asistentes.

En una terminal solo tienen que teclear el siguiente comando:

yay -S nushell

Ahora para el resto de las distribuciones de Linux tienen que realizar la instalación con ayuda del gestor de paquetes de Rust. Si no cuentas con ello en una terminal debes teclear lo siguiente.

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

Se nos abrirá una serie de opciones en nuestro terminal y debemos contestar de forma adecuada. Debes pulsar 1 para continuar con la instalación con los valores predeterminados, que es lo aconsejable para la mayoría.

Una vez finalice podremos configurar nuestro shell actual para comenzar a trabajar:

source $HOME/.cargo/env 

Para instalar nushell vía cargo, basta con teclear en la terminal el siguiente comando:

Y listo con ello ya podras hacer uso de esta shell en tu sistema.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.