Yeni nushell komut kabuğu tanıtıldı

yayınlanan ilk kabuk sürümü NushellPower Shell ve klasik unix kabuğunun yeteneklerini birleştiriyor. Kod Rust'ta yazılmıştır ve tarafından dağıtıldı MIT lisansı altında. Proje başlangıçta çapraz platform olarak geliştirildi ve Windows, macOS ve Linux üzerinde çalışmayı destekliyor. İşlevselliği genişletmek için kullanılabilir eklentiler, etkileşim JSON-RPC protokolü aracılığıyla gerçekleştirilir.

Kabuk, Unix kullanıcılarının aşina olduğu "komut|filtreler|çıkış işleyicisi" biçimindeki bir boru hattı sistemini kullanır. Varsayılan olarak çıktı, tablo biçimini kullanan otomatik görüntüleme komutu kullanılarak biçimlendirilir, ancak ikili verileri ve bilgileri ağaç görünümünde görüntülemek için komutları kullanmak da mümkündür. Nushell'in gücü, yapılandırılmış verileri işleme yeteneğidir.

Kabuk, çeşitli komutların çıktısını ve dosyaların içeriğini yapılandırmanıza ve her özel komutun komut satırı seçeneklerini öğrenmeyi gerektirmeyen birleşik bir sözdizimi kullanılarak tasarlanmış isteğe bağlı filtreler uygulamanıza olanak tanır. Örneğin nushell “ls | burada boyut > 10kb" ve "ps | burada cpu > 10"; bu, yalnızca 10Kb'den büyük dosyaların ve 10 saniyeden fazla CPU kaynağı harcayan işlemlerin çıktısıyla sonuçlanır:

Yeni nushell komut kabuğu tanıtıldı

Yeni nushell komut kabuğu tanıtıldı

Verileri yapılandırmak için belirli komutların ve dosya türlerinin çıktısını ayrıştıran bir dizi eklenti kullanılır. cd, ls, ps, cp, mkdir, mv, date, rm komutları için benzer eklentiler sunulmaktadır ("^" öneki yerel komutları çağırmak için kullanılabilir, örneğin "^ls" çağrıldığında ls başlatılacaktır. sistem yardımcı programı). Seçilen dosya hakkındaki bilgileri tablo halinde görüntülemek için aç gibi özel komutlar da vardır. Otomatik ayrıştırma JSON, TOML ve YAML formatları için desteklenir.

/home/jonathan/Source/nushell(master)> Cargo.toml'u açın

——————+——————+——————
bağımlılıklar | geliştirici bağımlılıkları | paket
——————+——————+——————
[nesne Nesnesi] | [nesne Nesnesi] | [nesne Nesne] ——————+——————+——————

/home/jonathan/Source/nushell(master)> Cargo.toml'u açın | Paketi al

————-+—————————+———+———+——+———
yazarlar | açıklama | baskı | lisans | isim | versiyon
————-+—————————+———+———+——+———
[Liste Liste] | GitHub dönemi için bir kabuk | 2018 | MİT | hayır | 0.2.0
————-+—————————+———+———+——+———

/home/jonathan/Source/nushell(master)> Cargo.toml'u açın | package.version'ı edinin | yankı $it

0.2.0

Yapılandırılmış verileri filtrelemek için satırları filtrelemenize, sütunlara göre sıralamanıza, verileri özetlemenize, basit hesaplamalar yapmanıza, değer sayaçlarını kullanmanıza ve çıktıyı CSV, JSON, TOML ve YAML formatlarına dönüştürmenize olanak tanıyan çok çeşitli talimatlar sağlanır. Yapılandırılmamış veriler (metin) için, sınırlayıcı karakterlere göre sütunlara ve satırlara bölmeye yönelik talimatlar sağlanmıştır.

Kaynak: opennet.ru

Yorum ekle