【发布时间】:2014-01-02 19:19:47
【问题描述】:
我遇到了一个问题,似乎应该有一个简单的答案,但我一直在碰壁。
我正在尝试创建一个目录结构,其中包含通过两个不同变量命名的文件。例如:
101_2465
203_9746
526_2098
我正在寻找看起来像这样的东西:
for NUM1 in 101 203 526 && NUM2 in 2465 9746 2098
do
mkdir $NUM1_$NUM2
done
我曾考虑将 NUM1 和 NUM2 的值设置为数组,但它使脚本过于复杂——我必须使每一行代码尽可能简单,因为它被不太了解的人使用关于编码。他们已经熟悉使用上述示例设置的 for 循环(但仅使用 1 个变量),因此我试图使其尽可能接近。
提前致谢!
【问题讨论】:
-
您的问题是您需要保持相关对相关。一个简单的嵌套循环不会这样做。您需要通过索引耦合的数组(因此 a[x] 匹配 b[x]),或者,如果值始终是整数且唯一,
b => a[b](因为 bash 具有稀疏数组,所以您可以这样做)。