組み込みbash関数のソースを見つけるには?bash組み込み関数bashソースコード
私はそれが関数であることを知っている:
$type -t MY_APP
function
私はそれがコードです参照してください。
type MY_APP
code
質問は次のとおりです。それが保存されている
- ?
- どうすれば変更できますか?
組み込みbash関数のソースを見つけるには?bash組み込み関数bashソースコード
私はそれが関数であることを知っている:
$type -t MY_APP
function
私はそれがコードです参照してください。
type MY_APP
code
質問は次のとおりです。それが保存されている
あなたはこのようにそれを行うことができます。
# Turn on debug
$ shopt -s extdebug
# Print out the function's name, line number and file where it was sourced from
$ declare -F my_function
my_function 46 /home/dogbane/.bash/.bash_functions
# Turn off debug
shopt -u extdebug
は(あなたが上から見つけた)関数の定義を含むファイルを開く、機能を編集するには。関数を編集してファイルを保存します。次に、このように、自分の殻にそれをソース:
$ . /path/to/function_file
機能は、一般的に(また、単に/etc/bashrc
いくつかのシステム上のように存在するか/etc/bash.bashrc
で、).bashrc
ファイルに格納されています。 SuperUserのThis answerには.bashrc
ファイルの詳細がいくつかあります。同様に、エイリアスのthis questionは、エイリアス&のLinuxサイトの詳細をエイリアスにするとき、スクリプトを作成するとき、そしていつ関数を書き込むべきときに細かいことが起きるかを説明します。
リンクされたトピックは面白いです。 .bashrcと.bashprofileを検索したところ、定義された関数は別の場所にありました。 @dogbaneの答えは私を助けました。 – idobr
それが動作します!私はdeclare -F my_functionを試しましたが、デバッグ機能を持たない関数名しか表示しません。良いアドバイスをありがとう。 – idobr
+1私は 'extdebug'を一度も使用したことがないので、関数がソースとなったファイルを見る方法がないことは分かりませんでした。非常に素晴らしい。 – chepner
これは素晴らしいです! –