Salve!
Oggi parliamo di Seq! (print a sequence of numbers).
$ man seq
Andatevelo a leggere. :)
$ seq 5
Output: (tabulazione verticale)
1
2
3
4
5
$ seq -s " " 5
output: (tabulazione orizzontale)
1 2 3 4 5
$ seq 2 2 20
output: (tabellina del due; tabulazione verticale)
2
4
6
8
10
12
14
16
18
20
$ seq -s " " 2 2 20
output: (tabellina del due; tabulazione orizzontale)
2 4 6 8 10 12 14 16 18 20
$ seq -s , 3 3 30
output: (tabellina del tre; tabulazione orizzontale; i numeri non sono separati da spazi, ma da virgole; -s sta per separatore;)
3,6,9,12,15,18,21,24,27,30
$ seq -s + 3 3 30 | bc
output: (sommo i numeri della tabellina del tre)
165
$ seq 3 3 30 | awk '{sum+=$1} END {print sum}'
output: (stesso esempio del precedente dove anzichè usare bc uso awk)
165
$ seq 50 | awk '{sum+=$1} END {print sum}'
output: (sommo i numeri da 1 a 50.)
1275
$ seq -s " " -w 02 10
output: (si commenta da solo.)
02 03 04 05 06 07 08 09 10
$ seq -s " " -w 009
output: (si commenta da solo.)
001 002 003 004 005 006 007 008 009
$ for i in $(seq 5 5 25); do echo "$i caramelle"; done
output:
5 caramelle
10 caramelle
15 caramelle
20 caramelle
25 caramelle
$ seq -10 2 5
output: (numeri negativi; tabulazione verticale)
-10
-8
-6
-4
-2
0
2
4
$ seq -s " " -10 2 5
output: (numeri negativi; tabulazione orizzontale)
-10 -8 -6 -4 -2 0 2 4
$ seq -f "un caffè e %g cornetti" 3 9
output: (seq e il bar)
un caffè e 3 cornetti
un caffè e 4 cornetti
un caffè e 5 cornetti
un caffè e 6 cornetti
un caffè e 7 cornetti
un caffè e 8 cornetti
un caffè e 9 cornetti
$ seq 10 | awk 'BEGIN {x=1; y=1} {printf "%d\n", x; z=x+y; x=y; y=z}'
output: (sequenza di fibonacci)
1
1
2
3
5
8
13
21
34
55
Ciao! :)
Ecco una soluzione più bella al posto di SEQ.
RispondiEliminaecho {0..10}
0 1 2 3 4 5 6 7 8 9 10
echo {0..10..2}
0 2 4 6 8 10
Ah stessa cosa può essere fatta con le lettere.
RispondiEliminaecho {a..z}
a b c d e f g .... z
oppure
echo {a..z..2}
a c e g i k m o q s u w y Con i salti da 2
Ma il post è su seq!!! :D
Elimina