gpt4 book ai didi

linux - 像传递文件一样传递 sed 输出

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:17:54 24 4
gpt4 key购买 nike

我有 ruby​​ 脚本接收配置文件的名称作为参数。我需要循环运行它,每次迭代更改配置中的一些参数。

sed 一切正常,但是我不知道如何将 sed 的脚本输出传递给 ruby​​,以便 ruby​​ 认为它是文件?可能吗?

用代码可能更清楚:

通常是这样启动的:

ruby script.rb config.conf

我想要的是:

sed 's/one_param/another_param/' config.conf | ruby script.rb ???????

我应该输入什么内容才能让 ruby​​ 脚本认为它接收到的文件内容是 sed 的输出?我考虑过将临时文件保存为 sed 的输出然后将文件传递给 script.rb 的解决方法,但我确信有更好的方法来实现它

最佳答案

参见 this answer关于如何使用进程替换

简而言之:

cat <( echo "yo")

或者在你的情况下:

ruby script.rb <(sed 's/one_param/another_param/' config.conf)

要创建一个进程替换,您可以使用 <(...) 将命令括起来喜欢:<(COMMAND)

检查 http://mywiki.wooledge.org/ProcessSubstitution

关于linux - 像传递文件一样传递 sed 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27255398/

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