> ...although I just tested it, and the increment and 0-padding only work in non-interactive mode ='(
Works for me...
$ echo $0 # determine current shell (alternative: "ps -p $$")
bash
$ echo {01..100..20}
001 021 041 061 081
But note that `{x..y}` has a major limitation: it doesn't support variables. Example: $ n=5
$ echo {1..$n}
{1..5}
# intended output: 1 2 3 4 5
The `for ((...))` syntax mentioned by @zazaulola supports variables (it works in bash and zsh).For completeness, here is a POSIX sh approach that doesn't require `seq` (in fact I notice this is what your "Uber Fancy" version uses internally):
i=1
while [ "$i" -le 5 ]; do
echo "$i"
i="$((i+1))"
done
(but note that `continue` won't work properly).