【发布时间】:2011-11-07 16:11:55
【问题描述】:
我正在编写一个 bash 脚本来循环遍历 2 个相同的目录树,以便在匹配的文件上运行差异。我只需要知道设置 2 个并行运行的循环的正确语法是什么。我还想递归地遍历目录,所以如果有一个额外的步骤来完成这个,你能提一下吗?
#!/bin/bash
FILES1=/path/to/one
FILES2=/path/to/two
for f1 in $FILES1; f2 in $FILES2
do
echo "Processing $f1 $f2 file..."
done
【问题讨论】:
-
您是否真的想用 $FILES2 中的第一个文件处理 $FILES1 中的第一个文件,然后使用 $FILES2 中的第一个文件处理第二个文件,依此类推,或者 $FILES1 中的每个文件与 $FILES2 中的每个文件(即交叉产品)?
-
diff -Naur /path/to/one /path/to/two有什么问题? -
保罗,我想要前者:第一和第二,等等。
-
@ted,你确定它们总是以相同的方式排序吗?
-
jamessan,你以最好的方式解决了我的问题,单线。您为什么不将其发布为答案?我会留下这个问题,因为它是 b/c 循环问题可能对其他人有用。