Bashで関数本体を表示する


14

.bashrcファイルにいくつかの機能を設定しました。すぐに何かを参照するために、関数の実際のコードを表示するだけで実行しないようにします。

方法はありますか、関数定義を見ることができますか?

回答:


15

declare組み込みの-fオプションは、その処理を行います。

bash-4.2$ declare -f apropos1
apropos1 () 
{ 
    apropos "$@" | grep ' (1.*) '
}

typeはその目的のために使用します、それは入力するのが短いです;)

bash-4.2$ type apropos1
apropos1 is a function
apropos1 () 
{ 
    apropos "$@" | grep ' (1.*) '
}

6

typeコマンドを使用してこれを行うことができます。

type yourfunc関数をSTDOUTに出力します。man type言います

タイプユーティリティは、コマンド名として使用された場合に各引数がどのように解釈されるかを示します。

2
man type?シェルビルトインには、通常、システムにマニュアルページがありません。
マナトワーク

リンクで回答を更新しました。私が使用しているシステムはArch Linuxです。
jasonwryan

1
ありがとうございました。思わマン・ページのパッケージは、アーチの上にはるかに含まれています。
マナトワーク

それはPOSIXのmanページの一つであるとして、私はそれが広く分布するだろうと思った...:問題ありません
jasonwryan

4
help typeBash固有の情報を表示します。
l0b0

0

組み込みコマンドの情報用:

help [-s|-d] COMMAND1 COMMAND2 ....

例えば:

help help alias

それらのすべてに関する情報を入力するには、たとえば:

help -s '' 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.