Byla představena nová příkazová řádka nushell

Byl zveřejněn první verze shellu nushell, kombinující vlastnosti Power Shell a klasických unixových shellů. Kód je napsán v jazyce Rust a distribuováno pod licencí MIT. Projekt je původně vyvíjen jako multiplatformní a podporuje běh ve Windows, macOS a Linuxu. Pro rozšíření funkcionality mohou být použity plugins, jejichž interakce probíhá pomocí protokolu JSON-RPC.

V shellu se používá uživatelsky známý systém potrubí ve formátu „příkaz|filtry|zpracovatel výstupu“. Výchozí výstup je formátován pomocí příkazu autoview, který používá tabulkový formát, ale je také možné použít příkazy pro zobrazení binárních dat a informací ve stromovém zobrazení. Silnou stránkou nushellu je schopnost manipulace se strukturovanými daty.

Shell umožňuje strukturování výstupů různých příkazů a obsahu souborů a aplikovat libovolné filtry, které jsou vytvářeny pomocí unifikované syntaxe, která nevyžaduje studium voleb příkazového řádku pro každý konkrétní příkaz. Například nushell umožňuje používat konstrukce jako „ls | where size > 10kb“ a „ps | where cpu > 10“, které vrátí pouze soubory větší než 10Kb a procesy, které spotřebovaly více než 10 sekund zdrojů CPU:

Byla představena nová příkazová řádka nushell

Byla představena nová příkazová řádka nushell

Pro strukturování dat se používá řada nadstaveb, které interpretují výstup konkrétních příkazů a typů souborů. Tyto nadstavby jsou navrženy pro příkazy cd, ls, ps, cp, mkdir, mv, date, rm (pro volání nativních příkazů může být použit prefix „^“, například volání „^ls“ spustí systémový nástroj ls). Existují také specializované příkazy, jako open pro zobrazení informací o vybraném souboru v tabulkovém zobrazení. Pro formáty JSON, TOML a YAML je podporováno automatické rozpoznávání.

/home/jonathan/Source/nushell(master)> open Cargo.toml

——————+——————+——————
dependencies | dev-dependencies | package
——————+——————+——————
[object Object] | [object Object] | [object Object]
——————+——————+——————

/home/jonathan/Source/nushell(master)> open Cargo.toml | get package

————-+—————————-+———+———+——+———
authors | description | edition | license | name | version
————-+—————————-+———+———+——+———
[list List] | Shell pro éru GitHubu | 2018 | MIT | nu | 0.2.0
————-+—————————-+———+———+——+———

/home/jonathan/Source/nushell(master)> open Cargo.toml | get package.version | echo $it

0.2.0

Je poskytována široká sada pokynů pro filtrování strukturovaných dat, které umožňují vyřazovat řádky, třídit podle sloupců, shrnovat data, provádět jednoduché výpočty, používat hodnotové počitadla a měnit výstup do formátů CSV, JSON, TOML a YAML. Pro nestrukturovaná data (text) jsou nabízeny pokyny pro rozdělení na sloupce a řádky na základě oddělovačů.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster