【发布时间】:2015-02-23 04:09:24
【问题描述】:
在我尝试在 ubuntu 上使用 rake 自动执行某些任务时,我遇到了需要打包的场景,目标机器上可能尚不存在。检查系统上是否已安装某些软件包并做出相应响应的好方法是什么?
例如,我想在某个任务中运行“npm start”,但我想知道系统上是否已经安装了 npm,从而为用户提供正确的错误消息。如果可能的话,我也可以和 thor 一起做。
【问题讨论】:
标签: ruby linux ubuntu rake thor
在我尝试在 ubuntu 上使用 rake 自动执行某些任务时,我遇到了需要打包的场景,目标机器上可能尚不存在。检查系统上是否已安装某些软件包并做出相应响应的好方法是什么?
例如,我想在某个任务中运行“npm start”,但我想知道系统上是否已经安装了 npm,从而为用户提供正确的错误消息。如果可能的话,我也可以和 thor 一起做。
【问题讨论】:
标签: ruby linux ubuntu rake thor
您可以使用Kernel.system 方法从Ruby 脚本运行系统命令。考虑以下内容:
fail unless system('which npm')
【讨论】: