私はこれを持っています:
foo(){
install_ores_gitflow;
command foo "$@"
}
export -f foo;
私は次のようなものを探しています:
export foo(){
install_ores_gitflow;
command foo "$@"
}
しかし、構文が正しくありません。
私が見つけた一つの技術は次のとおりです。 ファイルのすべてのBash機能を1行にエクスポートするには?
これは私がこれを行うことができることを意味します:
set -a;
foo(){
install_ores_gitflow;
command foo "$@"
}
set +a;
しかし、ソーシングスクリプトにset -a
非常に間違ったスクリプトがある可能性があるため、このソリューションは気に入らません。これは私のスクリプトがそれを上書きすることを意味します。
ベストアンサー1
厄介なハッキングですが、少なくともexport
命令を出すことはできます。以上関数定義をより簡単に見ることができます。
# a function to create a dummy function and export it
export_function() { eval "function $1 { :; }; export -f $1"; }
# then
export_function foo
foo() { echo "here is the *real* function"; }