The Case for Nushell

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • nushell

    A new type of shell

  • Today I learned (after disappearing down a rabbit hole after reading the linked article) that it's actually possible to begin to use & benefit from nushell's structured data pipe feature without changing one's current shell.

    Structured data pipes have always been my primary reason for keeping an eye on nushell's development but after looking at the project's documentation again today it all still seemed "too much initial effort with uncertain outcome".

    Because I don't want to switch my shell (not because bash is good but because it's not a priority to justify the expenditure of effort), I just want to have structured data in pipes within bash!

    Turns out it's as easy as:

    * nu --commands 'ls | where size > 1MiB'

    (Where `nu` is the nushell binary being called from your existing shell prompt.)

    Or, as more complete flow of data example:

    * echo "[1,2,3]" | nu --stdin --commands 'from json | to json' | cat

    Now you can fit nushell within your existing workflow where ever it's useful enough for you--without needing to commit to changing your entire shell.

    (And this isn't the only or necessarily the best way to arrange things for the communication with bash--there's "^" & "externals" & "command signatures" & "from ssv" etc too.)

    And nushell does have some nifty tools such as `explore` with `:try` to interactively build a processing pipeline.

    But this information doesn't seem to be documented anywhere in the "book" or other introductory material. It only seems to be documented in the help message of the `nu` binary--which I almost didn't even get as far downloading today.

    But then I found the help text in the source, so decided to try it again: https://github.com/nushell/nushell/blob/fd4ba0443d01e67f6304...

    If the structured data pipes is one of the main appeals for you, maybe try this approach out?

  • I also discovered an existing discussion[1] related to this topic which includes a link[2] to a "helper to call nushell nuon/json/yaml commands from bash/fish/zsh" and a comment[3] that the current nushell dev focus is "on getting the experience inside nushell right and [we] probably won't be able to dedicate design time to get the interface of native Nu commands with an outside POSIX shell right and stable.".

    [0] https://gitlab.com/RancidBacon/notes_public/-/blob/main/note...

    [1] "Expose some commands to external world #6554": https://github.com/nushell/nushell/issues/6554

    [2] https://github.com/cruel-intentions/devshell-files/blob/mast...

    [3] https://github.com/nushell/nushell/issues/6554#issuecomment-...

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • devshell-files

    Using nix as JSON, TEXT, TOML and YAML generator

  • I also discovered an existing discussion[1] related to this topic which includes a link[2] to a "helper to call nushell nuon/json/yaml commands from bash/fish/zsh" and a comment[3] that the current nushell dev focus is "on getting the experience inside nushell right and [we] probably won't be able to dedicate design time to get the interface of native Nu commands with an outside POSIX shell right and stable.".

    [0] https://gitlab.com/RancidBacon/notes_public/-/blob/main/note...

    [1] "Expose some commands to external world #6554": https://github.com/nushell/nushell/issues/6554

    [2] https://github.com/cruel-intentions/devshell-files/blob/mast...

    [3] https://github.com/nushell/nushell/issues/6554#issuecomment-...

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts