shell脚本与perl的安装脚本 - perl无处不在?

时间:2011-04-13 05:16:42

标签: perl shell

我想以npm(curl http://example.com/install.sh | sh)的方式创建一个安装脚本,但它让我提出了一个问题:我可以在perl中编写脚本吗?据我所知,perl默认安装在至少ubuntu,RHEL&操作系统X - 所以我想知道在2011年,我可以不写shell并且仍然足够通用吗?有没有第三个更好的选择?

这将针对用户的开发框,而不是分期或制作。

我想要具体做的是使用此安装脚本轻松地引导开发环境,而无需创建和维护包的开销。该脚本将有4个步骤:

  1. 检查并确保已安装git
  2. 使用git将repo克隆到cwd
  3. 下拉并将perl控制脚本保存到/ usr / bin,使其可执行
  4. 添加一些环境变量(相关帖子:linux cross-distro environment variable modification via script?
  5. 就是这样。我的想法是这很简单和通用,足以使用引导脚本而不是包。我的目标受众是用户的unix或linux本地开发系统。

4 个答案:

答案 0 :(得分:3)

我认为perl无处不在,你可以在其中编写安装程序。无论如何,壳牌更加尴尬。

您可能需要考虑将应用程序实际打包为deb或rpm,甚至使用makeself而不是提供原始脚本。

答案 1 :(得分:3)

最好的选择是简单地使用现有的,运行良好且使用的(开发)工具链来编写目标应用程序所使用的语言。不这样做会轻易放弃从围绕它们生长的生态学中获得的网络效应

等。等

应保留从Web安装,方便引导用户的系统进入开发环境。

告诉您有关软件的更多详细信息,以获得较少的一般性建议。


编辑:回复您的附录。

我劝阻您远离Web安装程序。这不是引导安装工具,这是软件的简单安装,它应该与例如软件一起完成。一个Module :: Build子类。

答案 2 :(得分:1)

以下是perl的各种发行版列表:

https://www.socialtext.net/perl5/distributions

即使perl没有发布在每一个不起眼的发行版上,它也只是一个特定的东西(或其他)。由于安装了各种版本的perl,您可能会遇到问题。

答案 3 :(得分:-1)

使用类似:

perl -E "$( wget -q -O - http://host/intall.pl )"

您也可以使用

`cmd`

而不是

$(cmd)

但无论如何,双引你的选择。