如何在 zsh(或其他 shell)中用一行运行 bash 中的命令?

如何在 zsh(或其他 shell)中用一行运行 bash 中的命令?

假设我现在在 zsh shell 中。如果我想在 bash 中运行命令,我目前执行以下两个命令。

exec /bin/bash
# Below is my bash command
help set

如何在不将 shell 更改为 bash 的情况下用一行实现上述操作?

答案1

使用bash -c

-c
从第一个非选项参数读取并执行命令command_string,然后退出。[…]

来源

bash -c 'help set'

请注意,在您的示例中,如果您没有使用exec但调用了 sole /bin/bash,则该zsh进程不会被替换bash,它会等到bash终止。这意味着您可以在 Bash 中以交互方式执行您想做的事情,然后调用exit(或按Ctrl+ D),然后您就会发现自己处于旧的 Zsh 中。

相关内容