Using two variables in a loop to access two diff f

2019-08-23 06:50发布

I am trying to call two diff files types in a loop.

I have a1.in-a10.in files and b1.out-b10.out files. I wanna access both files simultaneously. I dont want to use nested loops but simultaneously.

for f1,f2 `ls *.in` `ls *.out`;do
echo "$f1 $f2"
done

I get f1 and f2 not valid identified error

2条回答
走好不送
2楼-- · 2019-08-23 07:15

One way is this (here assuming bash):

$ touch a{1..10}.in b{1..10}.in

$ ls
a10.in  a2.in  a4.in  a6.in  a8.in  b10.in  b2.in  b4.in  b6.in  b8.in
a1.in   a3.in  a5.in  a7.in  a9.in  b1.in   b3.in  b5.in  b7.in  b9.in

$ for i in {1..10}; do echo a$i.in b$i.in; done
a1.in b1.in
a2.in b2.in
a3.in b3.in
a4.in b4.in
a5.in b5.in
a6.in b6.in
a7.in b7.in
a8.in b8.in
a9.in b9.in
a10.in b10.in

Here I'm just echoing the strings but you can use any command you like, diff, cat, etc instead of echo

查看更多
可以哭但决不认输i
3楼-- · 2019-08-23 07:23

You can process this with essentially the same command as you did with your last question. Just remove the extra arguments and the Java command.

for num in $(seq 1 10);
    do echo a$num.in b$num.out; # processing command here
done;
查看更多
登录 后发表回答