Shell 脚本 Linux -> Solaris 转换指南

Shell 脚本 Linux -> Solaris 转换指南

我开发了一些 Bash 脚本线性FS现在应该可以在 Sun Solaris 10 的最小安装上运行。是否有至少包含一些内容的指南一般提示进行转换,甚至更好的是“换算表“对于常用命令和选项?这个答案将是此类表中单个条目的一个很好的示例。

答案1

查看可移植 shell 编程的资源

特别是对于 Solaris,最大的问题是确保/usr/xpg4/bin您的.中的实用程序向后兼容 POSIX 之前的时代。中的实用程序与 Single Unix (/usr/xpg6/bin/usr/binPATH/usr/bin/usr/xpg4*v2v3分别)。 IIRC 有一些 shell 内置函数也会根据情况改变它们的行为PATH

如果您的脚本使用 bash 结构,则必须将它们调整为在 ksh 下运行。 Bash 和 ksh 有一个很大的公共子集,其中包含 POSIX 中没有的许多有用功能(数组、扩展 glob 模式、[[ … ]]... <(…))。您也可以在 Linux 上运行 ksh;大多数发行版都将其作为可选包,您可以下载源代码来自官方网站,或从更多可用的地方LFS 站点有安装说明

答案2

在网络上搜索“sun application porting Assistant 1.0 Final Release”。我相信它仍然可以从 Oracle 网站下载:

它是一个静态源代码分析和代码扫描工具,可用于识别Linux和Solaris平台之间不兼容的API。 Sun Application Porting Assistant 强大的 C/C++ 和 shell 脚本解析器能够以合理的精度检查这些源文件,并生成可用于移植应用程序的报告。 Sun APA 与易于使用的 GUI 和简单的命令行界面一起,旨在简化并加快估计和移植时间。

答案3

Unix 版罗塞塔石碑网站有一个表格,显示了许多不同 *nix 风格的常用命令的等效项,但更关注用户和管理员而不是 shell 脚本编写者。

答案4

无需猜测哪些可行、哪些不行,只需在工作站上安装 Solaris 并对其进行测试即可。 (显然您需要一个虚拟机管理程序来执行此操作 - 推荐 VirtualBox,因为您可以下载 Solaris 的预构建映像以与 VirtualBox 一起使用)。不会花费您一分钱,安装大约需要 30 分钟。其中大部分是下载时间。

相关内容