【发布时间】:2019-09-05 04:36:44
【问题描述】:
我试图在 AIX 上执行一个 shell 脚本,但它失败了,因为在 ksh 中无法识别来自 shell 的一些声明/指令(如 readarray、数组声明、带有特定参数的日期命令等) p>
我想在 AIX 上执行这个 linux 脚本而不用 ksh 重写整个脚本。
我尝试使用 #!/usr/bin/env bash 或 #!/bin/sh 等不同的 shebang 运行脚本,但 AIX 似乎仍在通过 ksh 运行它。
有人有在 AIX 上运行 linux shell 的解决方案吗?
« AIX Toolbox for Linux Applications » 似乎提供了在 AIX 上执行 linux shell。
有人可以确认我的信息吗?
如何检查 AIX Toolbox 是否已安装在 AIX 服务器上? (我没有此服务器的管理权限)
如何执行 AIX Toolbox 来运行 shell 脚本?
提前感谢您的帮助
【问题讨论】:
-
您的意思是,您希望运行 bash 脚本(“Linux 脚本”现在使用简约的
dash来实现兼容性)。这是可能的,如果你安装 bash。您可能已经在 /opt/freeware/bin 中安装了它——检查一下。 -
请注意 date(1) 不是外壳的一部分; AIX!date 不如 GNU!date。
-
如果你想编写跨平台的 shell 脚本,最好的办法是只坚持 posix shell 的特性,只使用 posix 描述的程序(和选项)。
标签: shell unix ksh aix shebang