zsh มีฟังก์ชั่นที่สมบูรณ์สำหรับคำสั่งใน PATH ชื่อ _path_commands. คุณสามารถกำหนดค่าความสมบูรณ์ที่จะใช้สำหรับ myFunc โดยวิ่ง:
compdef _path_commands myFunc
บันทึก: สิ่งนี้ต้องการให้ ระบบเสร็จสิ้น zsh ที่จะเริ่มต้น โดยปกติ (ตามที่ตั้งค่าโดย compinstall ) สิ่งนี้เกิดขึ้นในของคุณ ~/.zshrc กับ
# some zstyle configurations
autoload -Uz compinit
compinit
มีสายเข้า compdef ต้องทำหลังจาก compinit. หากคุณได้รับข้อผิดพลาด "ไม่พบคำสั่ง" เมื่อเรียกใช้ compdefฉันขอแนะนำให้ติดตั้งระบบเสร็จ compinstall.
บันทึก: เพื่อความปลอดภัย zsh จะโยนข้อผิดพลาดหากไดเรกทอรีใน $ path ของคุณเขียนได้ทั่วโลก หากคุณได้รับข้อผิดพลาด:
zsh compinit: ไดเรกทอรีที่ไม่ปลอดภัยรัน compaudit เพื่อดูรายการ ไม่สนใจ
ไดเรกทอรีที่ไม่ปลอดภัยและดำเนินการต่อ [y] หรือยกเลิก compinit [n]?
อย่าเพียงแค่กด y แต่กด n แล้วลอง compaudit | xargs chmod g-w ตามที่แนะนำไว้ที่ https://stackoverflow.com/questions/13762280/zsh-compinit-insecure-directories