Shell fonksiyonunun mevcut tanımını görüntüle


11

Bashrc'i sürekli olarak düzenliyorum ve bashrc yanlış bir işlev tanımıyla güncellenmiş olmasına rağmen, çalışma işlevi tanımına sahip bir terminalim var. (Güncellenmiş bashrc kaynağını tanımlayana kadar tanım değişmediği için) Bu durumda çalışma işlevi tanımını nasıl arayabilirim? Örneğin, şunu yazarsam:

alias function_name

Bu takma ad için tanımın ne olduğunu görebiliyorum. İşlev için benzer bir komut var mı? Değilse, geçerli terminalin kullandığı bashrc'nin tümünü çıktılamak için bir komut var mı?

Yanıtlar:


18
typeset -f function

belirtilen işlevin geçerli tanımını görüntüler. Ksh (kaynaklandığı yer), bash ve zsh olarak çalışır. (nb zsh olarak, type -f, which, functionsve whence -fayrıca fonksiyon tanımlama gösterir.)


Ayrıca whence -cvzsh içinde kullanabilirsiniz . -vSeçenek böyle takma veya işlevi (veya sizin aksi çalıştırılabilir varsa, söylemek olan PATHhiç). Çok kullanırsanız (ben gibi), tek kelimelik bir komutla takma ad kullanabilirsiniz.
Emanuel Berg
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.