System V init脚本必须用bash编写,这有什么原因吗



是否可以用Perl编写System V init脚本(这些脚本通常存储在/etc/init.d中并与service一起运行),并让shell识别#!/usr/bin/perl?这样做会有什么负面影响吗?

脚本本身可以用任何语言编写,但支持工具可能需要解析脚本中的元数据,以确定initscript何时启动/停止。这将选择限制为那些可以使此元数据以工具接受的形式可用的选项。

此外,可能还有一些用shell脚本编写的外部文件,initscript需要这些文件才能正确/高效/有效地运行。除非这些文件非常简单,否则任何用于读取它们的解析器都可能变得非常复杂。

相关内容

最新更新