Wprowadzono nową powłokę poleceń nushell

opublikowany pierwsze wydanie powłoki nushell, łącząc możliwości Power Shell i klasycznej powłoki Unix. Kod jest napisany w języku Rust i dystrybuowane przez na licencji MIT. Projekt jest początkowo rozwijany jako wieloplatformowy i obsługuje pracę w systemach Windows, macOS i Linux. Można wykorzystać do rozszerzenia funkcjonalności wtyczki, z którym interakcja odbywa się poprzez protokół JSON-RPC.

Powłoka wykorzystuje system potoków znany użytkownikom Uniksa w formacie „polecenie|filtry|obsługa wyjścia”. Domyślnie dane wyjściowe są formatowane przy użyciu polecenia autoview, które wykorzystuje format tabeli, ale możliwe jest również użycie poleceń do wyświetlania danych i informacji binarnych w widoku drzewa. Siłą Nushell jest jego zdolność do manipulowania danymi strukturalnymi.

Powłoka umożliwia strukturyzację danych wyjściowych różnych poleceń i zawartości plików oraz zastosowanie dowolnych filtrów, które zostały zaprojektowane przy użyciu ujednoliconej składni, która nie wymaga uczenia się opcji wiersza poleceń każdego konkretnego polecenia. Na przykład nushell pozwala na konstrukcje takie jak „ls | gdzie rozmiar > 10kb” i „ps | gdzie cpu > 10", co spowoduje wyświetlenie tylko plików większych niż 10 KB i procesów, które wykorzystały więcej niż 10 sekund zasobów procesora:

Wprowadzono nową powłokę poleceń nushell

Wprowadzono nową powłokę poleceń nushell

Do strukturyzacji danych używa się szeregu dodatków, które analizują dane wyjściowe określonych poleceń i typów plików. Podobne dodatki oferowane są dla poleceń cd, ls, ps, cp, mkdir, mv, date, rm (przedrostek „^” może służyć do wywoływania poleceń natywnych, na przykład wywołanie „^ls” uruchomi ls narzędzie systemowe). Istnieją również wyspecjalizowane polecenia, takie jak otwórz, które wyświetlają informacje o wybranym pliku w formie tabelarycznej. Obsługiwane jest automatyczne analizowanie formatów JSON, TOML i YAML.

/home/jonathan/Source/nushell(master)> otwórz Cargo.toml

——————+——————+——————
zależności | zależności deweloperskie | pakiet
——————+——————+——————
[obiekt obiektu] | [obiekt obiektu] | [obiekt obiektu] ——————+——————+———————

/home/jonathan/Source/nushell(master)> otwórz Cargo.toml | dostać paczkę

————-+—————————-+———+———+——+———
autorzy | opis | wydanie | licencja | imię | wersja
————-+—————————-+———+———+——+———
[lista Lista] | Powłoka na erę GitHuba | 2018 | MIT | nu | 0.2.0
————-+—————————-+———+———+——+———

/home/jonathan/Source/nushell(master)> otwórz Cargo.toml | pobierz wersję pakietu | powtórz to

0.2.0

Dostępny jest szeroki zakres instrukcji filtrowania danych strukturalnych, umożliwiających filtrowanie wierszy, sortowanie według kolumn, podsumowywanie danych, wykonywanie prostych obliczeń, używanie liczników wartości i konwertowanie danych wyjściowych do formatów CSV, JSON, TOML i YAML. W przypadku danych nieustrukturyzowanych (tekstu) dostępne są instrukcje podziału na kolumny i wiersze w oparciu o znaki ograniczające.

Źródło: opennet.ru

Dodaj komentarz