เปิดตัวเชลล์คำสั่ง Nushell ใหม่

ที่ตีพิมพ์ การปล่อยเปลือกครั้งแรก สาระสำคัญผสมผสานความสามารถของ Power Shell และ Unix Shell แบบคลาสสิก รหัสนี้เขียนด้วยภาษา Rust และ จัดจำหน่ายโดย ภายใต้ใบอนุญาต MIT โปรเจ็กต์นี้ได้รับการพัฒนาในช่วงแรกเป็นแพลตฟอร์มข้ามแพลตฟอร์มและรองรับการทำงานบน Windows, macOS และ Linux สามารถใช้เพื่อขยายฟังก์ชันการทำงาน ปลั๊กอินการโต้ตอบซึ่งดำเนินการผ่านโปรโตคอล JSON-RPC

เชลล์ใช้ระบบไปป์ไลน์ที่ผู้ใช้ Unix คุ้นเคยในรูปแบบ “command|filters|output handler” ตามค่าเริ่มต้น เอาต์พุตจะถูกจัดรูปแบบโดยใช้คำสั่ง autoview ซึ่งใช้รูปแบบตาราง แต่ยังสามารถใช้คำสั่งเพื่อแสดงข้อมูลไบนารีและข้อมูลในมุมมองแบบต้นไม้ได้เช่นกัน จุดแข็งของ Nushell คือความสามารถในการจัดการข้อมูลที่มีโครงสร้าง

เชลล์ช่วยให้คุณจัดโครงสร้างเอาต์พุตของคำสั่งต่างๆ และเนื้อหาของไฟล์ และใช้ตัวกรองที่กำหนดเอง ซึ่งได้รับการออกแบบโดยใช้ไวยากรณ์รวมที่ไม่จำเป็นต้องเรียนรู้ตัวเลือกบรรทัดคำสั่งของแต่ละคำสั่งเฉพาะ ตัวอย่างเช่น null อนุญาตให้ใช้โครงสร้างเช่น “ls | โดยที่ขนาด > 10kb" และ "ps | โดยที่ cpu > 10" ซึ่งจะส่งผลให้มีเอาต์พุตเฉพาะไฟล์ที่มีขนาดใหญ่กว่า 10Kb และกระบวนการที่ใช้ทรัพยากร CPU มากกว่า 10 วินาที:

เปิดตัวเชลล์คำสั่ง Nushell ใหม่

เปิดตัวเชลล์คำสั่ง Nushell ใหม่

ในการจัดโครงสร้างข้อมูล มีการใช้ส่วนเสริมจำนวนหนึ่งเพื่อแยกวิเคราะห์ผลลัพธ์ของคำสั่งและประเภทไฟล์เฉพาะ ส่วนเสริมที่คล้ายกันนั้นมีให้สำหรับคำสั่ง cd, ls, ps, cp, mkdir, mv, date, rm (คำนำหน้า "^" สามารถใช้เพื่อเรียกคำสั่งเนทิฟได้ เช่น การเรียก "^ls" จะเป็นการเปิด ls ยูทิลิตี้ระบบ) นอกจากนี้ยังมีคำสั่งพิเศษ เช่น เปิดเพื่อแสดงข้อมูลเกี่ยวกับไฟล์ที่เลือกในรูปแบบตาราง รองรับการแยกวิเคราะห์อัตโนมัติสำหรับรูปแบบ JSON, TOML และ YAML

/home/jonathan/Source/nushell(master)> เปิด Cargo.toml

——————+——————+——————
การพึ่งพา | การพึ่งพา dev | บรรจุุภัณฑ์
——————+——————+——————
[วัตถุวัตถุ] | [วัตถุวัตถุ] | [วัตถุวัตถุ] ——————+——————+——————

/home/jonathan/Source/nushell(master)> เปิด Cargo.toml | รับแพ็คเกจ

————-+—————————-+———+———+——+———
ผู้เขียน | คำอธิบาย | ฉบับ | ใบอนุญาต | ชื่อ | รุ่น
————-+—————————-+———+———+——+———
[รายการ รายการ] | เชลล์สำหรับยุค GitHub | 2018 | เอ็มไอที | นู๋ | 0.2.0
————-+—————————-+———+———+——+———

/home/jonathan/Source/nushell(master)> เปิด Cargo.toml | รับ package.version | สะท้อน $it

0.2.0

มีคำแนะนำมากมายสำหรับการกรองข้อมูลที่มีโครงสร้าง ซึ่งช่วยให้คุณสามารถกรองแถว จัดเรียงตามคอลัมน์ สรุปข้อมูล ทำการคำนวณอย่างง่าย ใช้ตัวนับค่า และแปลงเอาต์พุตเป็นรูปแบบ CSV, JSON, TOML และ YAML สำหรับข้อมูลที่ไม่มีโครงสร้าง (ข้อความ) จะมีคำแนะนำให้แยกเป็นคอลัมน์และแถวตามอักขระตัวคั่น

ที่มา: opennet.ru

เพิ่มความคิดเห็น