ruby - 是否可以在 gem 中包含 Bash 脚本?

标签 ruby bash gem

我正在创建一个 Ruby gem,我打算在 rubygems 上发布它.不幸的是,有一件事我无法用 Ruby 实现,而需要用 Bash 来完成(controlling RVM from script)。

是否可以在 gem 中包含 Bash 脚本?如果可以,我将如何在 gem 的上下文中从 Ruby 运行脚本?

最佳答案

这是可能的,但脚本只能在类 unix 环境中执行,其中包括 bash。您可以将 .sh 放入 bin/share/ 文件夹,然后调用:

name = 'your_gem_name'
g = Gem::Specification.find_by_name( name )
system( File.join( g.full_gem_path, 'share/myscript.sh' ) )

当然,您总是可以使用 bundler gem 模块来控制当前的 gem,而不是运行 shell 脚本。

关于ruby - 是否可以在 gem 中包含 Bash 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21185569/

相关文章:

bash - BASH 处理数字的能力是否与处理器位宽成正比?

ruby - 如何将 gem 配置为只使用系统 gem?

ruby-on-rails - Tailwind CSS 响应类不适用于 Rails ViewComponent gem

python - 使用shell脚本调用多个ROS启动文件

bash - 在 bash 脚本中使用 .env 属性

ruby-on-rails - 如何使用 docker 捆绑安装本地路径 gem?

gem - getaddrinfo:提供的节点名或服务名,或者未知(SocketError)

ruby-on-rails - 弃用警告 : alias_method_chain is deprecated

ruby - 如何创建匹配所有请求并指向一个资源/页面的 Rails 3 路由?

ruby-on-rails - 向 Rails 中的 link_to 方法添加 onclick 选项?