awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
nushell avatar

nushell/nushell

0
View on GitHub↗
39,743 星标·2,156 分支·Rust·MIT·19 次浏览www.nushell.sh↗

Nushell

Nushell is a cross-platform shell and programming language designed to treat all input and output as structured data rather than raw text streams. By enforcing data types and command signatures, it provides a consistent environment for building robust, pipeline-oriented workflows. The shell allows users to chain commands that pass structured objects between stages, enabling complex data processing and automation tasks that remain predictable across different operating systems.

What distinguishes the project is its focus on interactive data exploration and modular extensibility. Users can query, sort, and visualize local files, databases, and remote API responses directly within the terminal using native structured data primitives. The shell supports a plugin-based architecture that allows external binaries to register as native commands, alongside a module system that enables the creation of reusable, scoped command-line tools. These features are complemented by a flexible configuration system that allows for deep customization of the shell environment, including prompts, keybindings, and persistent settings.

The platform provides a comprehensive suite of tools for managing data and execution flow. It includes built-in support for structured data manipulation, such as record and table operations, as well as advanced features like concurrent pipeline processing, background job management, and runtime error handling. The shell also offers a sophisticated line editor with support for modal editing and interactive menus to streamline command entry.

Documentation and configuration are managed through standard files, allowing users to define custom commands, aliases, and environment variables that persist across sessions. The system is designed to integrate seamlessly with existing external commands, automatically converting between structured data and text or binary formats to maintain compatibility with standard system utilities.

Features

  • Data Structure Definitions - Organizes data into lists, records, and tables to manage complex datasets.
  • Interactive Data Querying Tools - Querying, sorting, and visualizing local files, databases, and remote API responses directly within the terminal using structured data primitives.
  • Data Pipelines - Enables the construction of data processing workflows by chaining input, filter, and output commands.
  • Shells & Scripting - A unified shell interface that provides consistent filesystem and process management across different operating systems.
  • Programming Languages - A functional language designed for building data processing workflows by chaining commands that pass structured objects between stages.
  • Runtime Environments - Maintains a mutable record of variables and directory stacks that propagates through command pipelines and nested scopes.
  • Path-Based Data Access - Enables retrieval of values from records and tables using dot-separated paths.
  • Structured Data Records - Provides syntax for creating structured key-value data objects.
  • Cross-Platform Scripting Environments - Writing portable automation scripts that maintain consistent behavior and data handling across different operating systems and environments.
  • External Command Integrations - Pipes data between internal and external commands with automatic conversion between structured data, text, and binary formats.
  • Structured Shells - A command-line environment that treats all input and output as structured data rather than raw text streams.
  • Data Filtering Tools - Allows narrowing datasets by selecting specific columns or filtering rows based on position.
  • Data Manipulation Utilities - Enables modification of record contents through field insertion, value updates, and record merging.
  • Data Transformation Utilities - Nushell supports merging multiple tables by appending rows or joining columns to aggregate data from different sources into a single unified structure.
  • Structured Data Parsers - Enables importing structured data from various formats by automatically detecting file types.
  • Command Aliasing - Nushell enables defining shorthand names for longer commands, including default arguments, to simplify command execution and improve workflow efficiency within the shell.
  • Command Line Extensions - Extending the shell environment by creating reusable modules, custom commands, and plugins that integrate seamlessly into existing pipelines.
  • Environment Variable Managers - Nushell enables inspecting and modifying environment variables, including execution metrics, configuration settings, and process exit codes, using a mutable environment record.
  • Plugin Architectures - Nushell supports standalone executable plugins that communicate with the shell using standard streams or local sockets through structured data formats like JSON or MessagePack.
  • Language Features - Supports branching logic and pattern matching within data pipelines.
  • Data Processing Pipelines - Processes data by passing structured objects through a series of connected commands that transform input into output.
  • Type Systems - Maintains internal consistency by enforcing strict type definitions for all variables and pipeline data during execution.
  • CSV and Tabular Data - Shell with native support for loading structured data formats.
  • Data Processing Tools - A shell with native support for loading and querying structured data.
  • TOML and YAML Utilities - A shell with native support for loading and querying structured data.
  • Command Line Shells - Modern shell with structured data support.
  • 开发者工具 - Modern shell environment with structured data support.
  • 编辑器扩展 - Implements the official language server protocol.
  • Rust Projects - Listed in the “Rust Projects” section of the Awesome For Beginners awesome list.
  • Shell Environments - Modern shell with structured data support.
  • Shell Plugins - Displays git working tree status information.
  • Shells and Scripting - Modern shell with structured data support.
  • System Utilities - Modern shell with structured data support.
  • Terminal Shells - Modern shell that treats data as structured objects.
  • bash/PowerShell/fish - Listed in the “bash/PowerShell/fish” section of the Awesome Alternatives In Rust awesome list.
  • Data Querying Interfaces - Supports retrieval of specific values or subsets from data structures using dynamic variables and expressions.
  • Dataframe Engines - Supports importing data as eager or lazy dataframes for optimized query execution.
  • SQLite Integration - Enables accessing SQLite databases by querying tables or executing custom SQL statements.
  • Filesystem Utilities - Nushell supports displaying directory contents as a structured table, optionally filtering results using glob patterns to match specific filenames or extensions.
  • Pipeline Input Accessors - Allows commands and filter closures to retrieve the current pipeline input to manipulate data dynamically.
  • Plugin Systems - A modular framework that allows users to extend shell functionality with custom binaries that communicate via structured data formats.
  • Shell Configuration Frameworks - Nushell supports modifying specific keys within the configuration record to adjust shell behavior without overwriting existing settings or resetting default values.
  • Concurrency Models - Allows concurrent execution of pipeline blocks across multiple hardware threads.
  • Concurrency Utilities - Nushell enables executing tasks in the background by passing a closure to a command that runs code in a separate thread and returns an identifier.
  • Error Handling - Provides mechanisms to catch runtime errors and implement custom exception handling.
  • Collection Iterators - Supports processing list elements by applying code blocks, filtering, or reducing collections.
  • Data Sorting Engines - Supports organizing table rows by one or more columns using comparison-based ordering.
  • Lazy Query Execution - Supports chaining operations on lazy dataframes to defer computation until final collection.
  • Query Optimization Engines - Defers computation of complex data transformations until the final result is requested to optimize performance for large datasets.
  • Environment Variable Interfaces - Nushell supports assigning environment variables by directly modifying the environment table or loading multiple variables at once using a table of pairs.
  • Filesystem Management Tools - Nushell supports cross-platform filesystem operations like moving, copying, and removing files or directories using built-in commands that integrate with the shell.
  • Interactive Menus - Provides interactive menus for command help, auto-completion, and history navigation.
  • Output Redirection - Supports sending standard output and error streams from external commands to files using shorthand operators.
  • Shell Customization Frameworks - Tailoring the shell experience through configurable prompts, keybindings, and persistent environment settings to optimize personal development productivity.
  • Shell Startup Managers - Nushell allows defining shell startup behavior by editing configuration files to set environment variables, custom commands, and settings for modular workflows.
  • Standard Libraries - Nushell provides built-in library modules that can be imported to access essential tools for logging, data formatting, system assertions, and custom help documentation.
  • Utility Libraries - Enables retrieving shell configuration, process information, and performance metrics through a structured environment record.
  • Task Management - Nushell supports listing currently executing background tasks and terminating specific jobs by their identifier to stop the associated thread and child processes.
  • Data Pipeline Automation - Building data processing workflows that transform, filter, and aggregate information using a unified, type-aware command-line environment.
  • List Processing Tools - Allows modification of list contents by inserting or updating values at specific indices.
  • Structured Data Sorters - Allows ordering tables or nested records by specifying one or more cell paths as keys.
  • Directory Navigation Utilities - Nushell enables maintaining a stack of directories by adding, removing, and navigating between them using indexed list commands to manage multiple active paths.
  • Environment Configuration Tools - Nushell supports updating environment variables or the current working directory within a custom command by using specific flags to persist changes to the caller.
  • Extension Registries - Nushell enables the registration of external plugin binaries to the system registry to cache available commands and ensure they load automatically during shell sessions.
  • Keybinding Configurations - Enables mapping specific key combinations to sequences of edit, send, or event commands to customize input behavior.
  • Pipeline Management Tools - Nushell allows capturing standard output and error streams from external commands into the pipeline for processing or redirection to files for logging.
  • Shell Configuration Management - Nushell supports saving aliases permanently by adding them to the configuration file to ensure they remain available in every new shell session.
  • Shell Prompt Customizers - Nushell enables customizing the shell prompt appearance by defining command blocks for primary and right-side prompts, including support for transient lines.
  • Startup Configurations - Provides mechanisms to redirect startup directories and manage environment variables during shell initialization.
  • Module Management - Allows defining environment variables that automatically apply when a module is imported.
  • Inter-Process Communication - Nushell allows exchanging data between the main thread and background jobs using send and receive commands to enable bidirectional communication between contexts.
  • Static Analysis - Resolves immutable variables and command arguments during the initial parsing phase to ensure static configuration safety.
  • Output Renderers - Allows configuring how pipeline results appear in the terminal by customizing display hooks.
  • HTTP Metadata Accessors - Provides structured access to HTTP response headers and status codes from network request commands.
  • Remote Data Fetching - Enables retrieving content from URLs and parsing it into structured formats.

Star 历史

nushell/nushell 的 Star 历史图表nushell/nushell 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Nushell 的开源替代方案

相似的开源项目,按与 Nushell 的功能重合度排序。
  • fish-shell/fish-shellfish-shell 的头像

    fish-shell/fish-shell

    33,687在 GitHub 上查看↗

    This project is an interactive command-line shell designed to provide a user-friendly terminal environment for system interaction and task automation. It functions as both an interactive interface for developers and a scripting runtime, featuring a clean, consistent syntax that simplifies command execution and process management. The shell distinguishes itself through a focus on discoverability and real-time feedback. It includes a predictive suggestion engine that offers command completions and history-based hints as you type, alongside a dedicated parser that provides immediate visual feedb

    Rustfishrustshell
    在 GitHub 上查看↗33,687
  • tokio-rs/tokiotokio-rs 的头像

    tokio-rs/tokio

    32,309在 GitHub 上查看↗

    Tokio is an asynchronous runtime for the Rust programming language, designed to manage and execute concurrent tasks efficiently. It provides a multi-threaded execution environment that schedules lightweight tasks across available processor cores, utilizing a work-stealing scheduler to balance computational load. By employing a poll-based execution model and waker-based notifications, the runtime drives asynchronous operations forward without requiring active polling loops, ensuring efficient resource utilization. The project distinguishes itself through a comprehensive suite of tools for high

    Rustasynchronousnetworkingrust
    在 GitHub 上查看↗32,309
  • redox-os/ionredox-os 的头像

    redox-os/ion

    1,650在 GitHub 上查看↗

    Mirror of https://gitlab.redox-os.org/redox-os/ion

    Rust
    在 GitHub 上查看↗1,650
  • servo/servoservo 的头像

    servo/servo

    37,170在 GitHub 上查看↗

    Servo is a high-performance, memory-safe web rendering engine designed for cross-platform embedding. It provides a modular framework that allows developers to integrate web content rendering into native applications across desktop, mobile, and embedded systems. By enforcing strict process isolation and memory safety, the engine creates a secure execution environment for processing web content. The engine distinguishes itself through a task-based, parallelized architecture that decouples layout, style, and rendering processes to maximize responsiveness. It utilizes a hardware-abstracted graphi

    Rustbrowserrustservo
    在 GitHub 上查看↗37,170
查看 Nushell 的所有 30 个替代方案→

常见问题解答

nushell/nushell 是做什么的?

Nushell is a cross-platform shell and programming language designed to treat all input and output as structured data rather than raw text streams. By enforcing data types and command signatures, it provides a consistent environment for building robust, pipeline-oriented workflows. The shell allows users to chain commands that pass structured objects between stages, enabling complex data processing and automation tasks that remain predictable across different operating…

nushell/nushell 的主要功能有哪些?

nushell/nushell 的主要功能包括:Data Structure Definitions, Interactive Data Querying Tools, Data Pipelines, Shells & Scripting, Programming Languages, Runtime Environments, Path-Based Data Access, Structured Data Records。

nushell/nushell 有哪些开源替代品?

nushell/nushell 的开源替代品包括: fish-shell/fish-shell — This project is an interactive command-line shell designed to provide a user-friendly terminal environment for system… tokio-rs/tokio — Tokio is an asynchronous runtime for the Rust programming language, designed to manage and execute concurrent tasks… redox-os/ion — Mirror of https://gitlab.redox-os.org/redox-os/ion. servo/servo — Servo is a high-performance, memory-safe web rendering engine designed for cross-platform embedding. It provides a… php/php-src — This project is the core source code for a general-purpose, server-side scripting language designed for web… julialang/julia — Julia is a high-performance, dynamic programming language designed for scientific computing, data analysis, and…