我一直在使用emulate sh -c ". $HOME/myscript.sh",到目前为止它正在工作。
但是,如果我在~并尝试去做emulate sh -c ". myscript.sh",我会得到.: no such file or directory: myscript.sh.. 为什么?
如果.脚本$PATH不包含/. 这在 POSIX shell 和本机 zsh 中都是正确的,因此不出所料,在 zsh 的 sh 仿真模式中也是如此。
sourcebash 和 zsh 中的内置函数.除了不进行 PATH 查找之外,/在当前目录中查找不包含 a 的脚本名称之外,其他内容是相同的。
emulate sh -c 'source myscript.sh'
Run Code Online (Sandbox Code Playgroud)
或者
emulate sh -c '. ./myscript.sh'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4301 次 |
| 最近记录: |