Isso funciona. Salve-o em increment.bash
e digite bash increment.bash 2
para obter o incremento começando em 2 ou bash increment.bash 4
para iniciar em 4. Começará em 2 se nenhum for definido. (Fiz alguns refinamentos para onde o anterior realmente funciona)
#!/bin/bash
if [ $1 ]; then
opt=$1
if [ $opt == "--help" ]; then echo "Usage: $0 [2|4] -- either starting number 2 or 4, to print first number and +1, increment by 3, then continue."; exit 0
elif [ $opt == 2 ]; then i=$opt
elif [ $opt == 4 ]; then i=$opt
fi
else i=2
fi
echo $i; let i++; echo $i;
for (( n=1; $n < 35; n++ )); do
if [ $i == 135 ] || [ $i == 137 ]; then break; fi
i=$[i+3]; echo "$i";
let i++; echo "$i";
done
Aqui está em ação:
$ for i in {2..4..2}; do for type in head tail; do echo ":: $i | $type :: "; bash increment.bash $i | $type; done; done
:: 2 | head ::
2
3
6
7
10
11
14
15
18
19
:: 2 | tail ::
118
119
122
123
126
127
130
131
134
135
:: 4 | head ::
4
5
8
9
12
13
16
17
20
21
:: 4 | tail ::
120
121
124
125
128
129
132
133
136
137