Seb*_*los 0 scripting bash shell-script environment-variables
假设我的 Bash 有一些广泛的~/.bashrc自定义功能,不仅可以帮助我交互使用,还可以帮助我编写脚本(别名、函数、变量等)。我希望我的所有脚本都可以使用此功能,因此我正在考虑设置BASH_ENV为~/.bashrc(这似乎是做到这一点的方法。)
我的问题是,这有什么问题吗?
~/.bashrc. 但我认为这是一个可以管理的问题,因为无论如何我都会在使用它们之前对其进行审查(或者盲目地相信像 Github 明星这样深奥的统计数据来认为它们是安全的),并且只是偶尔降低自己的水平来取消BASH_ENV任何可能行为不当的脚本。~/.bashrc并没有那么重,如果我想要速度,我就不会使用 shell 脚本。~/.bashrc只会成为我彻底 ganking 的主菜中的温和调味品。~/.bashrc文件分成两个文件,一个用于交互式使用,一个用于脚本编写,并且可能将其设置为交互式文件是脚本文件的超集。但除了那种模糊的纯洁感之外,这听起来似乎是付出了太多的努力却收获太少。~/.bashrc我正在使用的任何功能。这听起来不像是一个 NP 问题。~/.bashrc表明这样的脚本应该首先用另一种语言编写。IMO,不,这不是一个好主意。
您最好expand_aliases在使用它的每个脚本的顶部显式获取函数和变量库(别名在非交互式 shell 中不起作用,除非设置了 shell 选项) - 这样您就不会冒破坏的风险(大声地、明显地,或者更糟的是,巧妙地)系统上数百或数千个现有脚本中的任何一个。
然而,一如既往,最终的规则是:这是你的系统,如果你愿意,你可以破坏它。