我正在编写一些用纯 shell 脚本实现的守护进程,并希望使用 zsh(强大的替换、带有套接字/tcp 处理的模块等)而不是默认的 /bin/sh。我可以告诉“脚本”节使用自定义 shell 吗?
答案1
没有 [记录的] 方法可以从 /bin/sh 切换到主 shell 脚本运行。但是,您可以将脚本包装在 zsh 中。我在 bash 的各个地方执行此操作(通常是 find 的 -exec 子句):
zsh -c "do things...; more things..."
一个稍微优雅的方法是:
script
zsh -- <<EOF
# do stuff here
EOF
end script