首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >REDUX:如何克服Linux上的ksh与AIX/Solaris/HPUX上安装的ksh之间的不兼容性?

REDUX:如何克服Linux上的ksh与AIX/Solaris/HPUX上安装的ksh之间的不兼容性?
EN

Stack Overflow用户
提问于 2008-09-18 19:39:45
回答 4查看 830关注 0票数 2

在我们将数百个ksh脚本从AIX、Solaris和HPUX移植到Linux的过程中,我发现了另一个问题。有关前面的问题,请参见here

此代码:

代码语言:javascript
复制
#!/bin/ksh
if [ -a k* ]; then
    echo "Oh yeah!"
else
    echo "No way!"
fi
exit 0

(当在以k开头的多个文件的目录中运行时)会生成“哦,是的!”当使用AT&ksh93变体(ksh88和ksh93)调用时。另一方面,它会产生错误信息,然后是“没门!”在其他ksh变体(pdksh、MKS ksh和bash)上。

同样,我的问题是:

  • 是否有一个环境变量会导致pdksh的行为类似于ksh93?失败:
  • 是否在pdksh上有一个选项来获得所需的行为?
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-09-17 14:49:42

嗯,一年后,我的问题似乎没有解决办法。

我要加上这个答案,说我要忍受.

票数 0
EN

Stack Overflow用户

发布于 2008-12-23 16:19:17

我不会再在Linux上使用pdksh了。由于AT&T ksh已经成为OpenSource,所以可以从各种Linux发行版中获得包。例如,RedHat Enterprise和CentOS将ksh93作为"ksh“RPM包。

pdksh仍然在软件供应商的许多安装需求文档中提到。我们用ksh93替换了所有Linux系统上的pdksh,到目前为止没有出现任何问题。

票数 5
EN

Stack Overflow用户

发布于 2008-09-18 20:55:17

您确实意识到[是/usr/bin/test的别名(通常是链接、符号或硬链接),对吗?那么,实际的问题可能是不同版本的/usr/bin/test

OTOH,ksh用一个内置的东西覆盖它。也许有办法让它不这么做?或者您可以显式别名(如果所有平台上的/usr/bin/test都兼容的话)为/usr/bin/test

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/96133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档