
Czasami człowiek wpada na dziwne pomysły, zwłaszcza gdy chwilowo nie ma nic do roboty i przymula przed kompem. Dziś przytrafiło się to i mnie.
Nie gram w totolotka, więc naprawdę nie wiem skąd mi przyszedł nagle do głowy pomysł wylosowania 6 cyfr z 49 w konsoli … ale przy okazji udało się poczytać manuale i poznać kilka poleceń 🙂
shuf – tworzy losowe permutacje
Pierwsza rzecz to wylosowanie kilku liczb z zadanego przedziału – tu 6 z 49. Z pomocą przychodzi polecenie shuf z coreutils.
shuf -i 1-49 -n6
36
6
45
3
21
42
Działa, ale warto byłoby posortować wylosowane liczby w kolejności rosnącej…
sort – sortuje wiersze plików tekstowych
Sprawę powinno załatwić przekierowanie wyjścia powyższego polecenia na wejście filtra sort. Opcja -g porównuje według wartości liczbowej.
shuf -i 1-49 -n6| sort -g
9
10
15
18
32
39
Lepiej, ale chcielibyśmy uzyskać wyjście w jednej linii…
xargs – wykonaj polecenie z argumentami pobranymi ze standardowego wejścia
shuf -i 1-49 -n6|sort -g | xargs -n6
3 10 12 16 23 30
Jeśli chcielibyśmy wypełnić więcej kuponów z pomocą przyjdzie…
pętla for
for i in {1..5}; do shuf -i 1-49 -n6|sort -g; done | xargs -n6
8 10 15 25 34 46
17 19 28 37 41 45
2 12 25 33 38 45
4 9 21 29 42 47
15 16 21 27 34 37
To by było na tyle w dzisiejszym wpisie z kategorii wiedzy bezużytecznej 🙂