【发布时间】:2020-03-24 09:32:13
【问题描述】:
我有一个脚本“epsmat_hdf5_merge.py”,它合并了几个文件的内容。但是,这些文件位于它们各自的文件夹中,每个文件夹都以数字 (0001 0002 ...) 命名。我正在使用最原始的方法来识别文件夹中的文件:
epsmat_hdf5_merge.py q0001/eps0mat.h5 q0002/eps0mat.h5 q0003/eps0mat.h5 0004/eps0mat.h5 q0005/eps0mat.h5 q0006/eps0mat.h5 q0007/eps0mat.h5 q0008/eps0mat.h5 q0009/eps0mat.h5 q0010/eps0mat.h5
这里请注意,命令是“epsmat_hdf5_merge.py”,后面是各自文件夹中的所有 .h5 文件。
我不能使用简单的 seq 循环,因为
for i in seq`1 999`
do
epsmat_hdf5_merge.py q$i/eps0mat.h5
将简单地执行以下操作:
epsmat_hdf5_merge.py q0001/eps0mat.h5
epsmat_hdf5_merge.py q0002/eps0mat.h5
epsmat_hdf5_merge.py q0003/eps0mat.h5
...
只有一个文件,后跟 .py 脚本。因此,合并脚本无法在任何步骤合并任何内容。
知道如何处理吗?
尾注:
另外,如果我们现在将文件夹总数 (999) 更改为变量 (var),考虑到括号扩展难以管理 $var,语法会如何?
【问题讨论】:
-
您能否发布一个如您所描述的那样工作的代码?当前文档没有按照您所说的那样做,因此我们无法就任何改进提出建议,因为我们不知道您在做什么。
-
再一次,您发布的代码并没有按照您说的那样做。请发布您使用的真实代码以获得实际结果和预期结果。
-
我使用的实际代码是第一组,它得到了我想要的,但它很笨拙。第二个代码字段是我想要的一般概念,但它不起作用,因为它没有将所有 xxx/eps0mat.h5 集中在一个 epsmat_hdf5_merge.py 后面。看不到哪个部分不清楚..