Shell sử dụng hệ thống đường ống quen thuộc với người dùng Unix ở định dạng “lệnh|bộ lọc|trình xử lý đầu ra”. Theo mặc định, đầu ra được định dạng bằng lệnh tự động xem, sử dụng định dạng bảng, nhưng cũng có thể sử dụng các lệnh để hiển thị dữ liệu và thông tin nhị phân trong chế độ xem dạng cây. Điểm mạnh của Nushell là khả năng thao tác dữ liệu có cấu trúc.
Shell cho phép bạn cấu trúc đầu ra của các lệnh khác nhau và nội dung của tệp, đồng thời áp dụng các bộ lọc tùy ý, được thiết kế bằng cú pháp thống nhất không yêu cầu tìm hiểu các tùy chọn dòng lệnh của từng lệnh cụ thể. Ví dụ: Nushell cho phép các cấu trúc như “ls | trong đó kích thước > 10kb" và "ps | trong đó cpu > 10", điều này sẽ dẫn đến kết quả chỉ là các tệp lớn hơn 10Kb và các quy trình đã tiêu tốn hơn 10 giây tài nguyên CPU:
Để cấu trúc dữ liệu, một số tiện ích bổ sung được sử dụng để phân tích đầu ra của các lệnh và loại tệp cụ thể. Các tiện ích bổ sung tương tự được cung cấp cho các lệnh cd, ls, ps, cp, mkdir, mv, date, rm (tiền tố “^” có thể được sử dụng để gọi các lệnh gốc, ví dụ: gọi “^ls” sẽ khởi chạy ls tiện ích hệ thống). Ngoài ra còn có các lệnh chuyên dụng như mở để hiển thị thông tin về file đã chọn ở dạng bảng. Phân tích cú pháp tự động được hỗ trợ cho các định dạng JSON, TOML và YAML.
/home/jonathan/Source/nushell(master)> mở Cargo.toml
——————+——————+——————
phụ thuộc | phụ thuộc dev | bưu kiện
——————+——————+——————
[Đối tượng đối tượng] | [Đối tượng đối tượng] | [đối tượng Đối tượng]
——————+——————+——————
/home/jonathan/Source/nushell(master)> open Cargo.toml | nhận được gói
————-+—————————-+———+———+——+———
tác giả | mô tả | ấn bản | giấy phép | tên | phiên bản
————-+—————————-+———+———+——+———
[danh sách danh sách] | Shell cho kỷ nguyên GitHub | 2018 | MIT | nu | 0.2.0
————-+—————————-+———+———+——+———
/home/jonathan/Source/nushell(master)> open Cargo.toml | nhận gói.version | tiếng vang $ nó
0.2.0
Một loạt hướng dẫn được cung cấp để lọc dữ liệu có cấu trúc, cho phép bạn lọc hàng, sắp xếp theo cột, tóm tắt dữ liệu, thực hiện các phép tính đơn giản, sử dụng bộ đếm giá trị và chuyển đổi đầu ra sang định dạng CSV, JSON, TOML và YAML. Đối với dữ liệu phi cấu trúc (văn bản), có hướng dẫn chia thành cột và hàng dựa trên ký tự phân cách.
Nguồn: opennet.ru