当前设置

当前设置

典型的 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_函数/
      • 垃圾桶/
        • 函数一
        • 函数二

答案1

实际上,执行脚本文件会产生一个新的 shell 进程,而获取脚本则不会,所以你的前提是错误的。即使不是:

1) 建议的设置不起作用,因为这些函数在新生成的 shell 之外不可见。

2) 源脚本和可执行脚本之间的执行时间差异可以忽略不计。

3)建议的设置最终将有更多的执行的文件。

无论如何,Shell 脚本(被解释的)都是为了清晰和实用而设计的,而不是为了高性能,例如编译的 C 程序。基本上,您在这里尝试做的(以错误的方式!)是调整驴车。

相关内容