我很少接触shell脚本,我们有另一个部门编写它们,所以我对编写它们有所了解但没有经验。然而,对于我的问题,它们似乎都毫无用处。
我正在尝试使用 Cygwin 在基于 Windows 的机器上执行一些 KornShell (ksh) 脚本——我们使用这些脚本来启动我们的 Oracle WebLogic 服务器,现在它根本不会执行。我曾经能够在我的旧机器上很好地执行这些完全相同的脚本。
现在,我已将其范围缩小到“幻数”或脚本开头指定脚本解释器路径的任何内容:
IE:
#!/bin/ksh
如果我将其更改为作为简单的 bash 执行,则它可以工作,即:
#!/bin/sh
我检查了为 cygwin 安装的软件包 - 现在我安装的 shell 是:
- mksh MirdBSD KornShell
- 再次 bash the bourne shell
- zsh z 外壳
我应该期望在我的 cygwin/bin 目录中看到一个 ksh.exe 吗?有一个系统文件“ksh”,我假设它以某种方式与其他 shell exe 之一相关联,例如 mksh.exe
我明白我的解释很可能是错误的。但话虽如此,任何帮助将不胜感激。
谢谢。