如何为这些bash和ruby命令编写bin / script?

时间:2017-03-31 15:29:29

标签: ruby bash

我一直在终端写这些命令,但我不知道如何为它编写脚本。我能做什么?这些是我将在bash和irb中连续编写的命令:

# in bash
docker exec -it <some_container> bash
irb

# now everything below is a ruby command    
require 'bundler'
Bundler.require

required_load_path = File.expand_path(".")
$LOAD_PATH.unshift(required_load_path) unless $LOAD_PATH.include?(required_load_path)

Dir['config/*.rb'].each { |file| load file }

ENV["RAILS_ENV"] = 'development'
...

我有一个带bin文件夹的ruby项目。我可以写什么脚本来自动化所有这些?我目前遇到了麻烦,因为当我运行docker exec部分时...由于某种原因,irb部分不会被运行。

1 个答案:

答案 0 :(得分:0)

如果你只想在Docker上执行ruby脚本,可以选择使用你想要的命令创建一个ruby文件:

# rubyscript.rb
puts 'hello'
# ...

用docker exec调用它:

docker exec -it <imagename> ruby rubyscript.rb

但是如果你想运行一些东西并保持在REPL中执行更多东西,你可以在脚本中调用pry:

# rubyscript.rb
puts 'hello'
# ... 
require 'pry'
pry

这将执行你的东西并保持在pry中,在Docker容器上执行。