草庐IT

Docker镜像及容器基本操作命令

全部标签

ruby - 您可以在 irb session 中自动在每个命令上执行 'require' ruby​​ 文件吗?

我目前正在编辑一个文件,我正在使用irb来测试api:>require'./file.rb'>o=Object.new>o.method然后我希望能够编辑file.rb,并能够立即看到更改。示例:假设当我第一次需要file.rb时new_method不存在:>o.new_method这将返回一个错误。是否有沙盒/开发人员模式或方法可以实现上述目标而不必每次都重新加载文件?无论如何,在第一个要求之后要求将不起作用。我假设最坏的情况是我不得不改用负载。 最佳答案 我通常会像这样创建一个简单的函数:defreloadload'myscri

ruby-on-rails - 我应该忽略 schema.rb 因为扩展在开发/生产操作系统上不同吗?

我的数据库使用PostgreSQL。我在Mac上开发,需要这一行:#db/schema.rbonMacenvironmentenable_extension"plpgsql"但是,在Linux上不需要扩展。在这种情况下,我们是否应该忽略schema.rb并通过db:migrate为开发和生产环境生成它? 最佳答案 据我所知,问题是自动生成的schema.rb在生产和开发中会有所不同,因此会导致git中的文件发生变化,因为这一行。该行是由mac上的postgres适配器生成的吗?如果它是手动添加的,我会尝试将它放在其他地方,也许在初始

ruby - 对返回值的 ruby​​ 操作进行基准测试

基准测试获取一个block并返回时间:http://ruby-doc.org/stdlib-1.9.3/libdoc/benchmark/rdoc/Benchmark.htmlrequire'benchmark'putsBenchmark.measure{"a"*1_000_000}如果你想对一个操作进行基准测试并同时获得返回值和运行时间怎么办?或者,换句话说,闭包可以修改传递给它的对象吗? 最佳答案 闭包可以修改其范围内的对象,如下所示:require'benchmark'a=nilputsBenchmark.measure{a=

ruby - 无法运行 Jekyll 新命令

我尝试使用Jekyll新命令,但它没有用,并出现以下错误。$jekyllnewmyblog/Library/Ruby/Gems/1.8/gems/commander-4.1.6/lib/commander/runner.rb:385:in`require_program':programversionrequired(Commander::Runner::CommandError)from/Library/Ruby/Gems/1.8/gems/commander-4.1.6/lib/commander/runner.rb:384:in`each'from/Library/Ruby/Ge

ruby - 测量命令行调用的执行时间

我正在编写一个Ruby1.9.2脚本来评估不同外部命令行调用的执行时间。我使用ruby​​Process.system方法来执行命令行调用并trycatch执行时间如下:start=Time.nowsystem("./script1","argX")puts"Duration:#{Time.now-start}seconds"现在我遇到的问题是,持续时间反射(reflect)的不是外部进程的执行时间,而是“系统”调用的执行时间。知道如何测量外部进程的执行时间吗? 最佳答案 好的。如果我明白你想做什么,你想计算“./script1”调

ruby-on-rails - RoR 'new' 命令挂起

我刚刚开始使用ruby​​onrails。在终端中,我输入了“railsnewTestApp”,这是终端发生的事情:createcreateREADMEcreateRakefilecreateconfig.rucreate.gitignorecreateGemfilecreateappcreateapp/assets/images/rails.pngcreateapp/assets/javascripts/application.jscreateapp/assets/stylesheets/application.csscreateapp/controllers/application

ruby - 使用适当的参数转义从 ruby​​ 在后台执行 shell 命令

我必须在后台运行一个命令,但我想对其参数进行适当的转义。system("rakesend_mailssubject='#{params[:subject]}'2>/dev/null1>/dev/null&");如果我写system("rake","send_mails",params[:subject])那么我没有重定向的“位置”和&符号。如果我不这样做,我就没有对subject参数进行转义。我该如何解决? 最佳答案 在Ruby1.9中,尝试Process.spawn:#Spawnanewprocessandruntherakeco

ruby - 如何将 linux 命令输出到 chef 属性

我想将命令输出到chef属性中。有人可以帮助我如何在执行资源或bash资源中设置它。ruby_block"something"doblockdo#trickywaytoloadthisChef::Mixin::ShellOututilitiesChef::Resource::RubyBlock.send(:include,Chef::Mixin::ShellOut)command='cat#{fileName}'command_out=shell_out(command)node.set['my_attribute']=command_out.stdoutendaction:creat

ruby-on-rails - 如何解析 url 以获取基本 url? -- rails 3.1

我怎样才能像这样解析urlhttp://www.1800contacts.com/productlist.aspx?dl=P&source=cj&ac=8.2.0007只得到http://www.1800contacts.com?附言。有些url有子域等,所以我不能在这里使用正则表达式。 最佳答案 尝试使用“uri”库:require'uri'address='http://www.1800contacts.com/productlist.aspx?dl=P&source=cj&ac=8.2.0007'uri=URI.parse(a

ruby - 如何使 gem install 命令仅在未安装或需要更新时安装

我已经阅读了ruby​​gems站点的文档,但我猜想“geminstall”命令总是重新安装、重新编译所有内容,即使已经安装了相同的版本也是如此。如何让geminstall命令只在需要的时候安装? 最佳答案 看起来--conservative标志将使gem命令执行您想要的操作。geminstallrake--conservative来自文档geminstall--help:--conservativeDon'tattempttoupgradegemsalreadymeetingversionrequirement