คำสั่งในคำถามของคุณไม่ถูกต้อง Solaris ถึง 10 รุ่นจะ/bin/sh
ให้มรดกที่แท้จริงบอร์นเป็นเปลือก สิ่งนี้ทำเพื่อไม่ให้ความเข้ากันได้กับสคริปต์เก่าที่อาจล้มเหลวด้วยเชลล์ที่แตกต่างกัน ตัวเลือกนี้น่าผิดหวังมาก
ส่วนใหญ่ถ้าไม่ใช่ Unix และ Unix ที่เหลือทั้งหมดเช่นรีลีสรวมถึง Solaris 11 จะจัดเตรียมเชลล์ที่เข้ากันได้กับ/bin/sh
POSIX เนื่องจาก POSIX บังคับให้sh
คำสั่งเปิดใช้เชลล์ POSIX ไม่ใช่เชลล์ Bourne ดั้งเดิมซึ่งไม่เข้ากัน /bin/sh
โดยทั่วไป:
ksh88
หรือksh93
ในการใช้งาน Unix เชิงพาณิชย์
- แก้ไข
bash
บนOS/X
(แม้ว่าจะเคยเป็นzsh
)
ash
หรือpdksh
อนุพันธ์ในอื่น ๆBSDs
bash
หรือdash
ในการแจกแจง Gnu / Linux
ไม่จำเป็นต้องมีลิงก์ แต่สามารถใช้งานได้จริงในหลาย ๆ ระบบ แต่เป็น Gnu / Linux
ที่น่าสนใจแม้ว่าสิ่งที่ระบุคำตอบ upvoted ที่สุดสำหรับคำถามของคุณก็ไม่ได้ขาดคุณสมบัติที่ทำให้นักพัฒนาการกระจายการติดตั้งสิ่งที่แตกต่างจากเชลล์ Bourne ดั้งเดิมใน/bin/sh
แต่ความปรารถนาที่จะเป็นไปตาม POSIX ที่สุดเท่าที่จะทำได้ Unix เช่น OS ความจริงแล้ว POSIX เชลล์มีคุณสมบัติมากกว่าเชลล์ Bourne ดั้งเดิมเป็นเพียงผลข้างเคียงของเป้าหมายการปฏิบัติตามมาตรฐานนี้
มันเป็นความจริงด้วยเช่นbash
กันที่หอยบางตัวนั้นมีพฤติกรรมที่แตกต่างกันเมื่อถูกเรียกsh
และสิ่งนี้ส่วนใหญ่จะเป็นการเอาคุณสมบัติออกจากเปลือกไม่ใช่วิธีอื่น ๆ