我正在尝试编写一个Ruby脚本,该脚本会进入目录中的每个子目录,然后执行几个命令。我正在使用System()命令来执行其中的一些。根据文档,我认为System()应该等待子进程结束,然后再继续。但是,它似乎没有这样做。这是我的脚本的简化版本:
Dir.glob("**/") do |subdir|
Dir.chdir(subdir) do
system("gunzip *paired.fastq.gz")
end
end
我希望它在第一个子目录中的一个或所有相应文件上运行gunzip,一旦这些gunzip进程结束,然后转到下一个子目录,依此类推。但是现在,它只是同时为所有子目录中的文件创建gunzip进程。我误解了System()文档吗?我应该使用其他命令吗?
谢谢!!!