La shell utilizza un sistema di pipeline familiare agli utenti Unix nel formato “comando|filtri|gestore di output”. Per impostazione predefinita, l'output viene formattato utilizzando il comando autoview, che utilizza un formato tabella, ma è anche possibile utilizzare comandi per visualizzare dati e informazioni binari in una visualizzazione ad albero. La forza di Nushell è la sua capacità di manipolare dati strutturati.
La shell consente di strutturare l'output di vari comandi e il contenuto dei file e di applicare filtri arbitrari, progettati utilizzando una sintassi unificata che non richiede l'apprendimento delle opzioni della riga di comando di ciascun comando specifico. Ad esempio, nushell consente costrutti come “ls | dove dimensione > 10kb" e "ps | dove cpu > 10", che risulterà nell'output solo di file più grandi di 10 KB e di processi che hanno impiegato più di 10 secondi di risorse della CPU:
Per strutturare i dati, vengono utilizzati numerosi componenti aggiuntivi che analizzano l'output di comandi e tipi di file specifici. Componenti aggiuntivi simili sono offerti per i comandi cd, ls, ps, cp, mkdir, mv, date, rm (il prefisso "^" può essere utilizzato per chiamare comandi nativi, ad esempio, chiamando "^ls" verrà avviato il comando ls utilità di sistema). Esistono anche comandi specializzati, come apri per visualizzare le informazioni sul file selezionato in forma tabellare. L'analisi automatica è supportata per i formati JSON, TOML e YAML.
/home/jonathan/Source/nushell(master)> apri Cargo.toml
——————+——————+——————
dipendenze | dipendenze-dev | pacchetto
——————+——————+——————
[oggetto Oggetto] | [oggetto Oggetto] | [oggetto Oggetto] ——————+——————+——————
/home/jonathan/Source/nushell(master)> apri Cargo.toml | ottenere il pacchetto
————-+—————————-+———+———+——+———
autori | descrizione | edizione | licenza | nome | versione
————-+—————————-+———+———+——+———
[lista Lista] | Una shell per l'era GitHub | 2018 | MIT | no | 0.2.0
————-+—————————-+———+———+——+———
/home/jonathan/Source/nushell(master)> apri Cargo.toml | ottieni pacchetto.versione | eco $it
0.2.0
Viene fornita un'ampia gamma di istruzioni per filtrare i dati strutturati, consentendo di filtrare righe, ordinare per colonne, riepilogare dati, eseguire calcoli semplici, utilizzare contatori di valore e convertire l'output nei formati CSV, JSON, TOML e YAML. Per i dati non strutturati (testo), vengono fornite istruzioni per la suddivisione in colonne e righe in base a caratteri delimitatori.
Fonte: opennet.ru