tclsh 遍历列表_bash shell脚本for循环中的两个变量

这里有一些额外的方式来做你要找的利弊注意事项。

以下仅适用于不包含换行符的文件名。它以锁步方式将文件配对。它使用额外的文件描述符从第一个列表中读取。如果im1_dir包含更多文件,则当im2_dir用完时,循环将停止。如果im2_dir包含更多文件,则file1对于所有不匹配的file2将为空。当然,如果它们包含相同数量的文件,则没有问题。

#!/bin/bash

im1_dir=(~/prev1/*.png)

im2_dir=(~/prev3/*.png)

exec 3<

while IFS=$'\n' read -r -u 3 file1; read -r file2

do

run_black "$file1" "$file2"

done <

exec 3

可以使行为是一致的,这样的循环,只有非空匹配的文件停止无论哪个名单不再由具有双符号代替分号像这样:

while IFS=$'\n' read -r -u 3 file1 && read -r file2

这版本使用for循环而不是while循环。当两个列表中的较短者耗尽时,这个停止。

#!/bin/bash

im1_dir=(~/prev1/*.png)

im2_dir=(~/prev3/*.png)

for ((i = 0; i < ${#im1_dir[@]} && i < ${#im2_dir[@]}; i++))

do

run_black "${im1_di

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值