如何在Bash脚本

时间:2015-11-12 06:53:46

标签: bash shell zsh

我想在Bash脚本中执行Zsh函数命令。这是一个例子:

〜/ .zshrc

hello () {
  echo "Hello!"
}

hello.sh

#!/bin/bash
hello

在zsh上执行上面的bash脚本

(zsh) $ ./hello.sh
hello command not found

我也尝试过heredocs:

#!/bin/bash
/bin/zsh - <<'EOF'
  hello
EOF

用heredocs执行上面的脚本也说命令找不到错误。

有什么建议吗?

谢谢!

1 个答案:

答案 0 :(得分:5)

你可以这样使用它:

#!/bin/bash

/bin/zsh -i -c hello

-i:强制shell进行交互式

然后,如果shell是交互式的,则从/etc/zshrc然后$ZDOTDIR/.zshrc(通常是您的$HOME/.zshrc

读取命令

-c:在此shell中运行命令