在 Ruby 中读取文件的第一行

2024-04-01

我想读书only以最快、最简单、最惯用的方式使用 Ruby 来编写文件的第一行。最好的方法是什么?

(具体来说:我想从我最新的 Capistrano 部署的 Rails 目录中的 REVISION 文件中读取 git commit UUID,然后将其输出到我的标签。这将让我通过 http-glance 看到部署到我的服务器的版本.如果有完全不同且更好的方法来做到这一点,请告诉我。)


这将精确读取一行并确保文件随后立即正确关闭。

strVar = File.open('somefile.txt') {|f| f.readline}
# or, in Ruby 1.8.7 and above: #
strVar = File.open('somefile.txt', &:readline)
puts strVar
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Ruby 中读取文件的第一行 的相关文章

  • VS Code 在交互式变基期间不会等待我 [重复]

    这个问题在这里已经有答案了 如果我使用交互式变基git rebase i使用为 Git 配置的默认编辑器 一切都运行良好 如果我在我的全局中添加以下内容 gitconfig core editor C Program Files x86 M
  • RSpec 2 中使用 OR 相等

    下面这个例子的正确写法是什么 玩家的分数应等于 5 或 8 it should equal 5 or 8 do player score should 5 or 8 end Thanks Tim 5 or 8将始终产生结果 5 并且不会执行
  • Rails 递归地包含 javascripts 资源文件夹

    我了解如何将一个 JavaScript 文件添加到 Rails 资产管道中 只需添加 require filename 到 application js 但是如何在一个文件夹下包含多个 javascript 文件 vendor assets
  • 删除 Xcode 项目的源代码控制

    我在 Xcode 项目上使用源代码控制已经有一段时间了 但现在我不想使用源代码控制 如何从 Xcode 中的项目中删除源代码控制 有三种方法 方法 1 将禁用所有项目的源代码管理 方法 2 将删除所有项目的单个存储库的链接 方法 3 将删除
  • 如果您使用 CocoaPods,您的 .gitignore 中会包含什么内容?

    我从事 iOS 开发已经几个月了 刚刚了解到有前途的可可豆荚 http cocoapods org 用于依赖管理的库 我在个人项目上尝试过 添加了依赖项Kiwi https github com allending Kiwi到我的 Podf
  • 读/写带有特殊字符的.txt文件

    I open Notepad Windows 并写 Some lines with special characters Special 并前往另存为 someFile txt 与Encoding set to UTF 8 在Java中我有
  • 对范围值进行排序

    我想对表示数值范围的字符串数组进行排序 如下所示 b 0 5 100 250 5 25 50 100 250 500 25 50 使用sort我得到的方法 b sort gt 0 5 100 250 25 50 250 500 5 25 5
  • Capistrano for Rails 3.1

    我正在使用 Rails 3 1 和 Capistrano 我明白了 没有这样的文件或目录 public images public stylesheets 和 public javascripts 的错误 错误 在网上搜索了一下 发现很多博
  • 正常关闭 sidekiq 进程

    有谁知道如何找到 sidekiq 的 pidfile 来优雅地关闭它 跑步ps ax grep sidekiq然后运行sidekiqctl stop
  • 添加两个 ActiveRecord::Relation 对象[重复]

    这个问题在这里已经有答案了 如何将两个关系添加在一起 当我尝试 运算符时 它返回一个数组 但我需要它来返回关系 谢谢 麦克风 Try new relation relation merge another relation
  • Git 删除其他人从远程所做的最后提交

    所以 我的情况是 错误地 我已经授予某人对我的分支的承诺 现在 在我的本地 我已经进行了提交 当我尝试将其推送到远程时 它显示远程在前面 因为对方已经将他的代码推送到了这个分支并进行了多次提交 现在 我可以从远程删除这些提交而不将拉取到本地
  • Rails 4.1 环境变量未重新加载

    我创建了一个application yml文件在配置目录中并添加了一些键值对 即AWS REGION us east 1 我还添加了以下内容application rb读取文件并更新 ENV 哈希 if Rails env developm
  • 如何在源代码管理中存储 Visual Studio 的调试配置

    Visual Studio 的调试配置存储在 user文件是用户特定的并且传统上被源代码管理忽略 我对工作目录参数感兴趣 我需要它在程序员的机器上保持一致 并且它具有以下价值 outDir而不是默认的 ProjectDir 我怎样才能解决这
  • 为什么 Git Bash 无法运行我的可执行文件?

    I am on git for windows https github com git for windows 吉特 巴什 我无法在命令行上运行可执行文件 Pedr Abc 07 MINGW64 c dev ls sqlite3 exe
  • 如何使 Yard `@macro` 应用于多个文件

    如果我有在one file下列 module Something class Resource Defines a new property param String name the property name param Class t
  • git merge --squash 和 gitcherry-pick 有什么区别?

    如果我在标准的主功能工作流程中工作 那么将功能分支压缩到主功能分支和将其挑选到主功能分支之间有什么区别 分支示例 m1 m2 master f1 f2 feature 我认为两者都有相同的输出 即 m1 m2 m3 master f1 f2
  • Cucumber / Savon 省略或删除日志输出

    在运行黄瓜测试时 我得到 除了测试结果之外 许多与调试 日志相关的输出 格式如下 D 2013 03 06T12 21 38 911829 49031 DEBUG SOAP request D 2013 03 06T12 21 38 911
  • 从数组中删除空白元素

    当我从 ruby on Rails 表单中保存多个选择时 它似乎在前面添加了一个空白元素 我该如何删除它 该字段为 selected player utf8 gt authenticity token gt H8W7qPBezubyeU0a
  • 使用nodegit切换分支/标签

    我整个早上都在尝试打开现有的存储库并使用 nodegit 更改分支或标签 文档内容很丰富 但似乎已经过时了 关于我做错了什么有什么想法吗 var NodeGit require nodegit var open NodeGit Reposi
  • gerrit - git(pull、checkout、cherrypick)的用途是什么?

    在 Android 的 gerrit ex 中 link https android review googlesource com c 109934 要下载补丁 我看到4个选项 回购下载 checkout pull 择优挑选 它们之间有什

随机推荐

  • jQuery 表单转发器和 select2 不能一起工作

    我正在使用 Select2 和 jQuery 表单转发器 https github com DubFriend jquery repeater https github com DubFriend jquery repeater 我已经在
  • php错误日志,如何删除重复项/查找唯一错误[重复]

    这个问题在这里已经有答案了 有没有办法只搜索错误日志以查找唯一的错误 原因是我有很多重复的错误 并且不想错过罕见的错误 我将如何编写一个自定义脚本来解析错误日志 并过滤掉除日期时间之外的所有重复项 来分析 var log apache2 e
  • 理解 atoi() 函数

    我是一名 Python 程序员 正在从 K R 书中学习 C 这似乎是一个非常微不足道的问题 但我仍然被难住了 下面附上 K R RIP Ritchie 书中的一段代码 它实现了 atoi 函数 atoi s convert s to in
  • Tkinter Windows 按键事件

    Tkinter 中 Windows 键的事件是什么 我使用的是 Linux 但我想要 Linux 和 Windows 的答案 如果 Mac 有类似的密钥 请随时告诉我它的绑定 我想左右 windows 键有不同的事件 Windows 键似乎
  • 将用户的时区与网站办公地点的时区进行比较

    我正在开发一个项目 我需要在联系人区域向网站访问者显示一条消息 例如 联系电话 91 99 3241 5285 You can call us now 该消息在上面一行中突出显示 现在我的问题是 如何将用户的时区与公司办公室的工作时间进行比
  • 从 Fluent Nhibernate 获取表名

    在流畅的 nhibernate 中设置映射后 有没有办法从类类型中获取实体的表名 我读过常规的 nhiberante 你可以做类似的事情cfg GetClassMapping typeof Employee 我想做这样的事情来检索数据库表名
  • 有没有办法在我的代码中使用 Typescript.Collections.HashTable ?

    我在 Typescript 编译器的代码中看到了 HashTable 的实现 在文件 src compiler core hashTable ts 中 你知道有没有办法可以直接在我的 Typescript 项目中使用它 您可以通过定义接口来
  • 将向量数组作为函数参数传递(值不会改变)

    我在一类中有一组向量 class MeasurementData private std vector
  • laravel 5 根据路由返回 HTML 或 JSON

    我想显示不同的输出 JSON 或 HTML 我无法使用 Request ajax 功能 因为我只是收到正常请求 JSON 响应不是基于 XHR 请求 是否有可能区分不同路线的输出 例如 检查控制器是否由前缀为 mob 的路由调用 然后根据该
  • 检测从 C# 应用程序最小化的所有窗口

    如何检测从 C 应用程序最小化的所有窗口 其他应用程序 使用这里的示例http pinvoke net default aspx user32 EnumDesktopWindows http pinvoke net default aspx
  • 单独运行时单个规范通过,但运行所有规范时失败

    我的 foo controller spec rb 中有 30 个规范 当我使用规范运行整个文件时 我得到 4 个失败和 2 个待处理 当我单独运行 4 个失败的规范时 其中 3 个仍然失败 但其中一个通过了 起初我认为这是一个数据库问题
  • C++ New 与 Malloc 用于对象的动态内存数组

    我有一个 Bullet 类 它的构造需要几个参数 但是 我使用动态内存阵列来存储它们 我正在使用 C 所以我想通过使用 new 运算符来分配内存来符合它的标准 问题是当我分配数组时 new 运算符要求构造函数参数 而当时我没有 我可以使用
  • 从表中删除*不起作用[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试删除all rows从表中但它不起作用 当我做echo mydb gt error 它给了我以下内容 You have an e
  • Node-PerfectAPI vs Restify.js vs ExpressJS vs Node-APIServer [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我是 ExpressJS 的新手 我想为我的服务创建 API 该服务将直接由其他服务器使用 并且一部分也由移动应用程序 浏览器使用 我刚刚发现了
  • Dagger 和 mvp - 演示者是否应该使用 dagger 进行注入

    我开始认为在mvp中 匕首不应该在presenter中使用 构造 dagger 的常用方法是使用全局组件并具有用于确定图形范围的子组件 该全局组件通常在创建 appmodule java 类时将 applicationContext 作为参
  • 如何在 Scala 中模拟“一次分配”变量?

    这是一个后续问题我之前的初始化变量问题 https stackoverflow com questions 4400926 can i define method private fields in scala 假设我们正在处理这样的上下文
  • Android Profiler 未出现在 Android Studio 中

    我想分析我的设备中的内存消耗 但我没有找到Android 分析器Android Studio 中的选项卡如下所示 请问谁能帮我显示这个选项卡 如果你看一下顶部菜单 你会看到个人资料图标单击它 它将启动您的应用程序并附加配置文件 请参阅下面的
  • Spark - Scala - saveAsHadoopFile 抛出错误

    我想解决该问题 但无法进一步进行 有人可以帮忙吗 import org apache hadoop mapred lib MultipleTextOutputFormat class KeyBasedOutput T gt Null V l
  • iOS 8 SpriteKit 在从块/操作中添加或删除子项时崩溃

    从 iOS8 开始 我的游戏突然开始崩溃 经过一番调试 我发现游戏在以下两个地方崩溃 sparkNode runAction SKAction sequence Some actions and finally SKAction remov
  • 在 Ruby 中读取文件的第一行

    我想读书only以最快 最简单 最惯用的方式使用 Ruby 来编写文件的第一行 最好的方法是什么 具体来说 我想从我最新的 Capistrano 部署的 Rails 目录中的 REVISION 文件中读取 git commit UUID 然