简而言之,$0和${BASH_SOURCE[0]}都可用于获取脚本的名称,但是它们在特定场景下提供的信息是不同的。在单个脚本中执行时,两者可能显示相同的信息。然而,如果你需要在函数内、被 source 的脚本中或者脚本链的任意点确定当前脚本的准确位置,${BASH_SOURCE[0]}是更可靠的选择。 记住检查你的脚本是否需要在不同的环...
${BASH_SOURCE[0]}(or, more simply,$BASH_SOURCE[1]) contains the (potentially relative) path of the containing script inallinvocation scenarios, notably also when the script issourced, which is not true for$0. Furthermore, asCharles Duffypoints out,$0can be set to anarbitraryvalue by the...
(它是argv[0],这是有道理的。)在我的脚本(.zshrc)中回显 $0 给出zsh对于$0,这与${BASH_SOURCE[0]}不同。是。事实上,${BASH_SOURCE[0]}似乎适用于zsh,除了内部.zshrc文件。 我在.zshrc中真正在做什么(这不起作用): echo ${BASH_SOURCE[0]} source `dirname $0`/common-shell-rc.sh 源失败($0是...
zsh中的${BASH_SOURCE[0]}等价物是${(%):-%N},而不是$0(正如OP所说,后者在.zshrc中失败)...
1 常用快捷键 Alt+Backspace:删除光标前的一个单词 Alt+F:移动光标到下一个空格处 Alt+B:移动光...
从变量BASH_SOURCE 中去掉最后一个'/'字符及其后的字符 如BASH_SOURCE为 "a/b/c/d"则${BASH_SOURCE%/*} 为"a/b/c"表示从末尾去掉指定的内容
Shell: source+位置参数+Shell里面的true(0)和false+函数 source 命令。 source 很多时候在 bash 中被简写为句点(.),是脚本调用的一种特殊形式。Shell 的基本 工作方式就是先创建子进程,然后执行新的命令;但是如果希望脚本在 Shell 进程内直接执 行,则可用 source 命令来调用脚本。它仅限于脚本,不可以对二进制...
1 echo ${BASH_SOURCE[0]} 显示执行脚本的命令,dirname 取出该命令的路径部分,解析为绝对路径(你可能会cd到脚本所在路径后./xxx.sh执行,也可能用脚本的绝对路径执行,两种情况dirname命令都可以取到脚本的绝对路径)。2 && pwd 如果&&前面的命令(这里为cd xxx)执行成功,执行pwd取当前路径(即...
列出现有Alias alias 在Bash,Z shell(ZSH)和fish中查找和编辑Alias 大多数现代操作系统默认使用Bash shell。...刷新配置 source 配置文件来刷新配置更改: source ~/.bashrc Alias现有的Linux命令现有的Linux命令可以被Alias,与使用常用选项一起运行。...在此示例中,更改ls命令的默认行为以提供有关文件和目录结构的...
linux下的source命令与./区别 当我修改了/etc/profile文件,我想让它立刻生效,而不用重新登录;这时就想到用source命令,如:source /etc/profile 对source进行了学习,并且用它与sh 执行脚本进行了对比,现在总结一下。 source命令: source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令。 功能:使Shel...