Iterating through a range of ints in ksh?

后端 未结 7 516
故里飘歌
故里飘歌 2020-12-30 22:51

How can I iterate through a simple range of ints using a for loop in ksh?

For example, my script currently does this...

for i in 1 2 3 4 5 6 7
do
            


        
7条回答
  •  猫巷女王i
    2020-12-30 23:14

    Just a few examples I use in AIX because there is no range operator or seq, abusing perl instead.

    Here's a for loop, using perl like seq:

    for X in `perl -e 'print join(" ", 1..10)'` ; do something $X ; done
    

    This is similar, but I prefer while read loops over for. No backticks or issues with spaces.

    perl -le 'print "$_ " for 1..10;' | while read X ; do xargs -tn1 ls $X ; done
    

    My fav, do bash-like shell globbing, in this case permutations with perl.

    perl -le 'print for glob "e{n,nt,t}{0,1,2,3,4,5}"' | xargs -n1 rmdev -dl
    

提交回复
热议问题