在AIX上运行Linux Shell

时间:2019-04-15 08:19:10

标签: shell unix ksh aix shebang

我试图在 AIX 上执行shell脚本,但由于在ksh中无法识别来自shell的某些声明/指令(如readarray,数组声明,带有特定args的date命令等)而失败, >

我想在AIX上执行此linux脚本,而不用ksh重写整个脚本。

我试图使用#!/usr/bin/env bash#!/bin/sh之类的其他shebang运行脚本,但是AIX似乎仍通过ksh运行它。

有人可以在AIX上运行linux shell的解决方案吗?

«Linux应用程序的AIX工具箱»似乎提供了在AIX上执行linux shell的条件。

有人可以向我确认此信息吗?

如何检查AIX服务器上是否已安装AIX Toolbox? (我对此服务器没有管理权限)

如何执行AIX Toolbox来运行Shell脚本?

预先感谢您的帮助

2 个答案:

答案 0 :(得分:0)

link中可以看到,您可以安装Linux应用程序的AIX Toolbox,并且将拥有bash。另外,您只能下载并安装此软件包。

安装后,您可以像运行操作系统中的任何其他程序一样执行bash

但是通常在尝试在AIX或HP-UX上运行linux脚本时,您会遇到很多挑战。

答案 1 :(得分:0)

您可以使用bash!需要从here安装yum。一旦安装了yum,它将自动安装bash软件包。 放入一个临时的空文件夹,解压缩并安装所有RPM:rpm -Uvh *.rpm

最后编辑/etc/security/login.cfg和“ /usr/bin/bash

shells = /bin/sh,/bin/bsh,/bin/csh,/bin/ksh,/bin/tsh,/bin/ksh93,/usr/bin
/sh,/usr/bin/bsh,/usr/bin/csh,/usr/bin/ksh,/usr/bin/tsh,/usr/bin/ksh93,/usr/bin/
rksh,/usr/bin/rksh93,/usr/sbin/uucp/uucico,/usr/sbin/sliplogin,/usr/sbin/snappd,
/usr/bin/bash

将路径/usr/bin/bash添加到/etc/shells

# echo “/usr/bin/bash” >> /etc/shells

将shell更改为bash:

# chuser shell=/usr/bin/bash root

在root的家中创建一个新的.bash_profile

# .bash_profile
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
PS1="[\u@\h \w]\$ "
export PS1

使用root登录,您会看到类似以下内容的

[root@aixserver ~]#