ฉันทำสิ่งนี้แล้ว:
$ z() { echo 'hello world'; }
ฉันจะกำจัดมันได้อย่างไร
ฉันทำสิ่งนี้แล้ว:
$ z() { echo 'hello world'; }
ฉันจะกำจัดมันได้อย่างไร
คำตอบ:
unset -f z
จะยกเลิกการตั้งชื่อฟังก์ชั่น z คนสองคนตอบด้วย:
unset z
แต่ถ้าคุณมีฟังก์ชั่นและตัวแปรที่ชื่อว่า z เท่านั้นตัวแปรจะไม่ถูกตั้งค่าไม่ใช่ฟังก์ชัน
ใน Zsh:
unfunction z
นั่นเป็นอีกชื่อ (หรือดีกว่าเนื้อหา) สำหรับunhash -f z
หรือunset -f z
และสอดคล้องกับส่วนที่เหลือของครอบครัวของ:
unset
unhash
unalias
unlimit
unsetopt
เมื่อสงสัยสิ่งต่าง ๆ ให้พิมพ์un<tab>
เพื่อดูรายการทั้งหมด
(เกี่ยวข้องกันเล็กน้อย: มันยังดีที่มีฟังก์ชั่น / นามแฝงเช่นrealiases
, refunctions
, resetopts
, reenv
ฯลฯ "อีกครั้งsource
" ไฟล์นั้นถ้าคุณได้แยก / จัดกลุ่มพวกเขาเป็นเช่น.)