ซีเชลล์

ซีเชลล์ (Zsh หรือ Z Shell) เป็น เชลล์ยูนิกซ์ ที่สามารถใช้เป็นเชลล์ปฏิสัมพันธ์ และเป็นตัวแปลคำสั่งภาษาที่ทรงพลังสำหรับการเขียนเชลล์สคริปต์ ซีเชลล์เป็นส่วนขยายของบอร์นเชลล์ที่ได้รับการปรับปรุงเป็นอย่างมาก รวมถึงการเพิ่มฟังก์ชันบางประการของแบช เคเชลล์ และทีซีเชลล์

 ต้นกำเนิด 
พอล ฟอลสเตด เขียนซีเชลล์เวอร์ชันแรกในปีคริสต์ศักราช 1990 ขณะเป็นนักเรียนที่มหาวิทยาลัยพรินซ์ตัน ชื่อซีเชลล์มีที่มาจากชื่อล็อกอิน "zsh" ของศาสตราจารย์ที่มหาวิทยาลัยเยลนามว่า Zhong Shao (ซึ่งขณะนั้นเป็นผู้ช่วยศาสตราจารย์ที่มหาวิทยาลัยพรินซ์ตัน)

 คุณสมบัติต่าง ๆ 
ซีเชลล์มีคุณสมบัติเช่น:
 ระบบเติมคำสั่งให้สมบูรณ์ (command-line completion) แบบปรับแต่งได้ ที่รองรับทั้งการเติมคำสั่งและอาร์กิวเมนต์ของโปรแกรม ซึ่งรองรับโปรแกรมหลายร้อยโปรแกรมมาแต่ตั้งต้น
 การเรียกดูประวัติการเรียกคำสั่งข้ามเชลล์ทั้งหมดที่เรียกใช้อยู่
 รองรับการทำ file globbing ซึ่งช่วยในการระบุชื่อไฟล์โดยไม่จำเป็นต้องรันคำสั่งเพิ่มเติม (เช่น คำสั่ง find)
 ปรับปรุงการจัดการตัวแปร/อาเรย์
 รองรับการป้อนเข้าคำสั่งแบบหลายบรรทัดในบัฟเฟอร์เดียว
 การตรวจการสะกด
 โหมดความเข้ากันได้ที่หลากหลาย กล่าวคือซีเชลล์สามารถทำตัวเหมือนเป็นบอร์นเชลล์ เมื่อถูกรันด้วย /bin/sh
 บรรทัดรับคำสั่งที่สามารถตกแต่งได้ รวมถึงความสามารถในการแสดงข้อมูลบริเวณด้านขวาของหน้าจอ และซ่อนข้อมูลนั้นเมื่อพิมพ์คำสั่งที่ยาว
 มอดูลสำหรับความสามารถอื่นที่เรียกใช้ได้เพิ่มเช่น ตัวควบคุม TCP และ Unix domain socket ขนาดเต็ม, ไคลเอนต์ FTP, และส่วนขยายฟังก์ชันทางคณิตศาสตร์
 คำสั่ง where ซึ่งทำหน้าที่เหมือนคำสั่ง which แต่แตกต่างกันที่จะแสดงรายการคำสั่งทั้งหมดที่ถูกระบุใน $PATH
 ความสามารถในการตั้งชื่อไดเร็กทอรี ทำให้สามารถตั้งชื่อเช่น ~mydir ซึ่งมีคุณลักษณะคล้าย ~ และ ~user

 Oh My Zsh 
เว็บไซต์ชุมชนที่ใช้ชื่อว่า "Oh My Zsh" รวบรวมโปรแกรมเสริมและธีมจากแหล่งภายนอกสำหรับซีเชลล์ ภายในปี ค.ศ. 2016 กรุโค้ดโปรแกรมบนกิตฮับของ Oh My Zsh มีผู้ร่วมเขียนมากกว่า 1,000 คน ปลั๊กอินมากกว่า 200 โปรแกรม และธีมมากกว่า 140 แบบ
นอกจากนั้น Oh My Zsh ยังมาพร้อมกับเครื่องมือที่คอยจัดการปรับปรุงเวอร์ชันของปลั๊กอินและธีมอยู่เสมอ

 อ้างอิง 

 แหล่งข้อมูลอื่น 


 ซีเชลล์ ที่ SourceForge
 ZSH Wiki


หมวดหมู่:เชลล์ยูนิกซ์
หมวดหมู่:ภาษาสคริปต์