อักขระชื่อฟังก์ชันที่ถูกต้องของเชลล์
การใช้อักขระ Unicode แบบขยาย (ไม่มีข้อสงสัย) มีประโยชน์สำหรับผู้ใช้หลายคน เชลล์ที่ง่ายกว่า (ash (busybox), dash) และ ksh ล้มเหลวด้วย: tést() { echo 34; } tést แต่bash , mksh , lkshและzshดูเหมือนจะอนุญาต ฉันทราบว่าชื่อฟังก์ชันที่ถูกต้อง POSIX ใช้นิยามของชื่อนี้ นั่นหมายถึง regex นี้: [a-zA-Z_][a-zA-Z0-9_]* อย่างไรก็ตามในลิงค์แรกมันยังกล่าวว่า: การใช้งานอาจอนุญาตให้ตัวละครอื่น ๆ ในชื่อฟังก์ชั่นเป็นส่วนขยาย คำถามคือ: สิ่งนี้ได้รับการยอมรับและจัดทำเป็นเอกสารหรือไม่? ที่ไหน? เปลือกหอยไหน (ถ้ามี)? คำถามที่เกี่ยวข้อง: เป็นไปได้ใช้อักขระพิเศษในชื่อฟังก์ชันเปลือก? ฉันไม่สนใจที่จะใช้เมตาอักขระ (>) ในชื่อฟังก์ชัน ชื่อฟังก์ชันพุ่งพรวดและทุบตีที่มี“ -” ฉันไม่เชื่อว่าตัวดำเนินการ (การลบ "-") ควรเป็นส่วนหนึ่งของชื่อ