通常のbash設定はsource
起動時に追加のドットファイルを追加するため、開始時間が確実に長くなります。
関数の内容を独自の実行可能ファイルに移動すると、どのような利点がありますか?
現在の設定
~/.bashrc
#!/bin/sh
if [ -f ~/.bash_functions ]; then . ~/.bash_functions; fi
~/.bash_functions
#!/bin/sh
function_one(){}
function_two(){}
....
推奨設定
~/.bashrc
#!/bin/sh
export PATH="$PATH:$HOME/.bash_functions/bin"
- ~/
- .bash_function/
- ゴミ箱/
- 機能1
- 機能2
- ゴミ箱/
- .bash_function/
ベストアンサー1
実際にスクリプトファイルを実行すると、新しいシェルプロセスが作成されますが、スクリプトをインポートしないため、前提が正しくありません。そうでなくても:
1)提案された設定は、新しく作成されたシェルの外部ではこれらの機能が表示されないため機能しません。
2) ソーススクリプトと実行可能スクリプト間の実行時間差は無視できます。
3)提案された設定は最終的にもっと実行されたファイルです。
とにかく、シェルスクリプト(解釈)は、コンパイルされたCプログラムなどの高性能ではなく、明確さと実用性のために設計されています。基本的にここで(間違った方法で!)したいのはロバカートを調整することです。