2011-07-24 8 views
44

Şu anda üzerinde çalıştığı projeye bağlı olarak, proje takma adlarını ve işlevlerini tanımlayarak mevcut kullanıcının kabuğuna eklenen bir program yapıyorum. Bu takma adlar ve işlevler, projenin kökü için cd olan cdproj gibi aynı ada sahip olabilir ve kesinlikle aynı ada sahip olacaktır.İşlev tanımlamayı kaldırın (unalias karşılığı)

Önceden tanımlanmış takma adları ve projeleri değiştirirken (diğer bir deyişle, diğer projenin diğer adlarını ve işlevlerini tanımlamadan önce) işlevleri kaldırmak istiyorum.Ayrıca, bash ve zsh'de unalias ile bir takma ad kaldırabilirim, ama nasıl olur Belki zsh

işlevi işlevim

+0

İlginç olan, bunun tamamen kopya olmadığıdır. Soru sadece bash hakkında değil. 'Zsh' için de bir referans var. –

cevap

66
unset -f my_function 

kaldıracaktır (veya ayarlanmamış), bu eski güzel '15, met biraz geciktim t bu özellik devam ediyor.

+1

'-f', normal bir değişkeni bozmanın aksine işlev içindir. Bu kopyada açıklanmıştır: http://stackoverflow.com/a/245409/1695680 – ThorSummoner

9

unfunction my_function? bir işlev için aynı şeyi

+0

Güzel! Bu belki 'unalias' ile daha tutarlı, belki de biraz hantal. – g33kz0r

+0

Asla çok geç değildir. Teşekkürler. –