我有两个 Ruby 文件:
db/migrate/20120920180336_create_admin_pages.rb
db/migrate/20120920150716_devise_create_users.rb
此文件中有一个常量变量:_create_admin_pages.rb
如何在文件中找到它并使以下命令正常工作?
gsub_file "db/migrate/*_create_admin_pages.rb", "t.boolean :published", "t.boolean :published, :default => false"
最佳答案
ruby -pe 'gsub("t.boolean :published", "t.boolean :published, :default => false")' < db/migrate/*_create_admin_pages.rb
Ruby 可以使用多个选项运行。这里的 -pe
选项(实际上是两个选项)让 Ruby 执行这个循环:
- 直到不再输入:
- 读取一行输入,
- 将
-pe
之后的字符串作为代码运行, - 打印结果。
全部使用隐式变量$_
,最后读取的行。
关于ruby - 正则表达式,如何在 ruby 中查找文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12518865/