gpt4 book ai didi

ruby - 如何使用 Ruby 解压 .tgz 文件

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

我需要解压/解压缩以 .tgz 结尾的随机文件名

当我使用 irb(通过命令行解释 ruby​​)时,这个命令有效

`tar xzf *.tgz`

只要我在合适的目录下

但是,这在 ruby​​ 脚本中不起作用。我通过使用更改目录

puts Dir.pwd
Dir.chdir("unprocessed/") do
puts Dir.pwd
end
`tar xzf *.tgz`

这将我置于未处理的子目录中,然后我尝试运行上面的 tar 命令。然而,它给了我这个错误,但同样的事情在 irb 中起作用。

tar (child): *.tgz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now

我需要解压/解压缩以 .tgz 结尾的随机文件名然后我将阅读其中的内容。

编辑----在接受的答案的帮助下,我最终使用了

Dir.chdir("unprocessed/") do
puts Dir.pwd
`tar xzf #{Dir.pwd}/*.tgz`
end

最佳答案

反引号唤起了一个对 Dir.pwd 一无所知的新 shell,所以你想要的是这样的:

Dir.chdir("unprocessed/") do
`tar xzf #{Dir.pwd}*.tgz`
end

Dir.chdir("unprocessed/")
`tar xzf #{Dir.pwd}*.tgz`

关于ruby - 如何使用 Ruby 解压 .tgz 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21172563/

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