我对 AIX 机器相当陌生。我们想将一些程序部署到尚未推出的 AIX 机器中。
我们在 AIX 机器上有过短暂的体验,在使用 putty 登录后,我们感觉 shell 非常奇怪,在某些方面与我们正在使用的 Red Hat Linux 相比。退格键不起作用,并且某些箭头键也有奇怪的行为。
不管怎样,假设这是一台健康的机器,我想问一下,如果我们创建一个 .sh 文件并执行它,它的默认 shell 是什么?登录后默认的shell是什么?
答案1
Red Hat使用bash
作为其外壳; AIX 将使用修改后的商业 UNIX Bourne Shell 或各种过时(且有缺陷)的版本,具体ksh
取决于版本(从 AIX 4 开始,它要么是有缺陷的ksh88
,要么是其有缺陷的克隆)。如果您需要箭头键,则需要运行ksh
or bash
(如果ksh
该版本的 AIX 上的 仍然是 pre- ksh93
,则箭头键将不起作用,但Ctrl+ P/ Ctrl+N可以)。
退格键不起作用是stty
设置不正确的症状; Linux 通常更喜欢退格键,但 AIX默认DEL
使用 System III/V 标准Ctrl+ 。H尝试stty sane; tset -Q
。 (这可能仍将其保留在^H
,在这种情况下您将需要stty erase '^?'
。)当您这样做时,请确保$TERM
正确(通常应该是xterm
或xterm-color
;如果后者不起作用,请使用前者)。
答案2
任何 5.x -> 6.x 版本的 AIX 中的默认 shell 都是 ksh。
从 AIX 版本 6100-04-03-1009 开始,安装 ksh 并运行版本 M-11/16/88f。
要显示计算机上的版本,请更改为 vi 模式:
# set -o vi
按 Esc,然后按 Ctrl-v。
# Version M-11/16/88f
答案3
如果您需要支持多种环境,并且您已经编写并测试了 bash 脚本,则可以考虑安装适用于 Linux 的 AIX 工具箱。完成后,您可以将 /opt/freeware/bin 添加到每个人的路径中并使用 bash。