gpt4 book ai didi

再次打印相同字符串时,Ruby 返回 null

转载 作者:太空宇宙 更新时间:2023-11-03 17:48:21 24 4
gpt4 key购买 nike

我在修改一个gitlab的pre-receive hook

返回分支名称的代码是

print ARGF.read
print "\n"
refs = ARGF.read
print refs

当我第一次打印或放置时,我得到了分支名称,但第二次,每当我使用相同的字符串时,它什么都不返回。零或空字符串。

任何线索为什么会这样。我是 ruby​​ 的新手,所以无法理解。

最佳答案

ARGF 是一种流,设计用于处理作为命令行参数给出或通过 STDIN 传入的文件的脚本。

手册指出 ARGF::read

从 ARGF 中读取 _length_ 个字节。在命令行中命名的文件通过此方法连接并视为单个文件,因此当不带参数调用此伪文件的内容返回他们的全部。

您可能想使用 ARGF::readline

返回 ARGF 中当前文件的下一行。

或者可能是ARGF::rewind

将当前文件定位到输入的开头,将 ARGF.lineno 重置为零。

关于再次打印相同字符串时,Ruby 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30046874/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com