มีรูปแบบที่แตกต่างกันมากมายสำหรับตัวเลือกที่ใช้ในอดีตในแอปพลิเคชัน UNIX ตัวเก่าหลายตัวเช่นtarใช้รูปแบบตำแหน่ง:
อาร์กิวเมนต์ตัวเลือกคำสั่ง
ตัวอย่างเช่น tar ใช้
tar * something * f "ไฟล์ทำงานบนพา ธของไฟล์" * "เพื่อจัดการ" *
ในความพยายามครั้งแรกเพื่อหลีกเลี่ยงความสับสนtarและโปรแกรมอื่น ๆ อีกสองสามรายการที่มีรูปแบบการโต้แย้งแบบเก่าอนุญาตให้ลบเครื่องหมายขีดกลางด้วยเครื่องหมายขีดกลางได้ แต่พวกเราส่วนใหญ่ก็ไม่สนใจ
คำสั่งอื่น ๆ บางคำสั่งมีไวยากรณ์บรรทัดคำสั่งที่ซับซ้อนมากขึ้นเช่นdd (1)ซึ่งใช้แฟล็ก, เครื่องหมายเท่ากับ, ชื่อพา ธ , อาร์กิวเมนต์และพาร์ทริดจ์ในต้นไม้ลูกแพร์
ใน BSD และรุ่นที่ใหม่กว่าของ unix สิ่งนี้มีการรวมกันมากขึ้นหรือน้อยลงเพื่อตั้งค่าสถานะอักขระเดี่ยวที่มีเครื่องหมาย '-' แต่สิ่งนี้เริ่มนำเสนอปัญหาสองสามประการ:
- ธงอาจจำยาก
- บางครั้งคุณต้องการใช้ชื่อด้วย '-'
- และโดยเฉพาะอย่างยิ่งกับเครื่องมือของ GNU ก็เริ่มมีข้อ จำกัด ตามจำนวนธงที่เป็นไปได้ ดังนั้นเครื่องมือ GNU เพิ่มตัวเลือก GNU
--output
ยาวเช่น
จากนั้นซันตัดสินใจว่าส่วนเสริม '-' ซ้ำซ้อนและเริ่มใช้ธงแบบยาวด้วยตัวเดียว
และนั่นคือสิ่งที่เกิดขึ้นในขณะนี้