ใน Windows เมื่อคุณเปิดพรอมต์คำสั่งโปรแกรมที่เรียกใช้เกือบจะทุกcmd.exe
ครั้ง มันเป็นอนุพันธ์ NT ที่ได้รับการปรับปรุงของ DOS ที่ใช้แบบเก่าcommand.com
ซึ่งมีความคล้ายคลึงกับCCP
ล่ามคำสั่งCP / M ที่เก่ากว่า
ใน Linux ตามที่ @Griffin กล่าวถึงโดยปกติแล้วคุณกำลังใช้งานbash
ในเทอร์มินัลอีมูเลเตอร์บางชนิดหากคุณใช้ในสภาพแวดล้อมแบบกราฟิก (ซึ่งอาจแตกต่างกันอย่างกว้างขวางขึ้นอยู่กับสภาพแวดล้อม distro และเดสก์ท็อปของคุณ) นี่ย่อมาจาก "Bourne Again SHell" เพราะเป็นรุ่นที่ขยายของเชลล์ "Bourne" รุ่นก่อนหน้า ( sh
) ซึ่งเป็นมาตรฐานของ Unix มาเป็นเวลานาน มีคนอื่น "ทางเลือก" เปลือกหอยในการใช้งานทั่วไปเช่นcsh
, และ ksh
tcsh
Windows cmd.exe
สามารถพิจารณาเชลล์ได้เช่นกัน (เท่าที่จะทำได้explorer.exe
)
ทั้งพรอมต์คำสั่ง Windows และ Unix shell ทั้งหมดมี "built-in" หลายตัวหรือคำสั่งที่จัดการทั้งหมดภายในเชลล์ ซึ่งรวมถึงคำสั่งพื้นฐานบางอย่าง (เช่นcd
) และคำสั่งแบบมีเงื่อนไขจำนวนมากและตัวดำเนินการที่ควบคุมโฟลว์สคริปต์หากไฟล์แบตช์ของคำสั่งถูกเรียกใช้งาน
อย่างไรก็ตามในทั้ง Linux และ Windows คำสั่ง "ส่วนใหญ่" ที่ทำสิ่งที่มีประโยชน์นั้นแท้จริงแล้วคือโปรแกรมภายนอกที่เชลล์ "เรียกว่า" เรียกใช้ และนั่นคือจุดประสงค์หลักของเชลล์เพื่อให้โอเปอเรเตอร์เริ่มโปรแกรมด้วยการระบุอาร์กิวเมนต์สำหรับโปรแกรมเหล่านั้น มันไม่ใช่ภาษาการเขียนโปรแกรมที่เคร่งครัดจริงๆมันเป็นเพียงกรอบสำหรับการเปิดตัวโปรแกรม