如何在Linux以外的平台上的shell脚本中启动新会话?

时间:2012-02-27 01:12:17

标签: shell session aix

我有这个问题: 我有一个脚本A,它调用另一个脚本B,但是这个脚本B必须在另一个会话中运行,在使用setsid的C程序中这是一件容易的事 (),但我找不到等效的shell命令。有一个setsid shell Linux中的命令,但在AIX和其他UNIX中没有这样的命令 平台。任何人都可以给我一些关于如何在AIX和其他UNIX平台上做这些的建议吗?谢谢。

1 个答案:

答案 0 :(得分:1)

setsid()系统调用存在于FreeBSD和OpenSolaris中,是POSIX.1的一部分。所以我认为存在于声称符合POSIX标准的任何内容中。

AIX完全符合POSIX标准中的“一个或多个”,但我从未使用它,因此我无法直接对其进行评论。由于它是供应商支持的操作系统,我建议您与供应商联系。

现在..“等效的shell命令”是什么意思?在shell脚本的上下文中,“session”是什么意思?如果您正在寻找的是使用原始脚本中的单独控制终端运行第二个shell脚本的方法,我建议您查看GNU Screen而不是系统调用。屏幕应该可用于AIX。

如果你有一个目前适用于Linux的shell脚本,而你正试图将它移植到其他平台,那么请在你的问题中包含该脚本。否则,我们会失明。