![]() |
Пред. тема | След. тема | ||
Форум Разговоры, обсуждение новостей | |||
---|---|---|---|
Изначальное сообщение | [ Отслеживать ] |
"Раздел полезных советов: Случайная задержка в shell-скрипте, выполняемом из crontab" | +/– | ![]() |
Сообщение от auto_tips (??), 27-Июл-22, 14:45 | ||
применимо в системах без anacron, без /etc/cron.[hourly|daily|weekly|monthly] и без systemd. | ||
Ответить | Правка | Cообщить модератору |
Оглавление |
Сообщения | [Сортировка по ответам | RSS] |
1. Сообщение от Аноним (1), 27-Июл-22, 14:45 | +/– | ![]() |
Чего только люди не придумают, чтобы jot не ставить | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #7, #12 |
2. Сообщение от grayich (ok), 27-Июл-22, 14:52 | +8 +/– | ![]() |
sleep $((RANDOM % 3600))и ещё десяток более коротких вариантов, в зависимости от системы и имеющихся утилит | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #3, #5 |
3. Сообщение от Аноним (3), 27-Июл-22, 21:02 | +/– | ![]() |
Это баш, кореутилс, перл, питон. В какой-нибудь фряхе tcsh вот и попробуй с ним сделать что-нибудь. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #2 Ответы: #4 |
4. Сообщение от grayich (ok), 27-Июл-22, 22:41 | +1 +/– | ![]() |
в фряхе в базовой системе(из коробки) есть jot, как выше предлагалиjot -r 1 1 3600 | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #3 |
5. Сообщение от john_erohin (?), 28-Июл-22, 04:37 | +/– | ![]() |
> продвинутого шела, | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #2 Ответы: #6 |
6. Сообщение от grayich (ok), 28-Июл-22, 10:22 | +2 +/– | ![]() |
> написал "без башизмов". но дорогая редакция не пропустила. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #5 Ответы: #14 |
7. Сообщение от Аноним (7), 28-Июл-22, 10:54 | +/– | ![]() |
Люди про неё не знают. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 Ответы: #46 |
8. Сообщение от OpenEcho (?), 28-Июл-22, 11:58 | +4 +/– | ![]() |
Plain C: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #18 |
9. Сообщение от OpenEcho (?), 28-Июл-22, 12:05 | +2 +/– | ![]() |
#!/bin/sh | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
10. Сообщение от Аноним (-), 28-Июл-22, 17:46 | –1 +/– | ![]() |
гыг, это типа как суть плоского анекдота объяснять кому-то | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
11. Сообщение от Аноним (11), 28-Июл-22, 23:24 | +/– | ![]() |
bc значит у него есть, а shuf нет... Вероятно, недоучили баш, недоучили шелл, недоучили всё. Но это не мешает радоваться изобретенному велосипеду и учить других. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #17, #32 |
12. Сообщение от Аноним (12), 28-Июл-22, 23:46 | +/– | ![]() |
> Чего только люди не придумают, чтобы systemd не ставить | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 |
13. Сообщение от Аноним (11), 28-Июл-22, 23:47 | +2 +/– | ![]() |
`echo 3600 '*' $(od -An -N2 -i /dev/urandom) / 65536 | bc` | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
14. Сообщение от Аноним (-), 28-Июл-22, 23:52 | +1 +/– | ![]() |
Повесить в памяти жирный интерпретер, да еще с немеряными модулями/стдлибами чтобы задержку отмерять это конечно круто. Надо было не мелочиться и V8 для этого заюзать, чего уж там. Или JVM накрайняк. Иначе недостаточно энтерпрайзно. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #6 Ответы: #15 |
15. Сообщение от john_erohin (?), 29-Июл-22, 06:33 | +/– | ![]() |
> Можно еще Менеджер Рандомных Задержек накодить | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #14 Ответы: #16 |
16. Сообщение от Аноним (-), 29-Июл-22, 13:13 | +/– | ![]() |
А может, просто man systemd.timer? Он умеет и это и намного больше :). Заодно крон можно отправить на свалку - в системде хотя-бы можно посмотреть активные таймеры ОДНОЙ командой. Сразу. Без велосипедизма. С кроном так почему-то не катит. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #15 Ответы: #27 |
17. Сообщение от OpenEcho (?), 29-Июл-22, 16:01 | –1 +/– | ![]() |
Многие дистрибутивы делают рэндомный запуск скриптов апдейта, чтобы уменшить ударную нагрузку от массы клиентов | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #11 Ответы: #19 |
18. Сообщение от Аноним (18), 29-Июл-22, 16:14 | +/– | ![]() |
> srand(time(NULL)) | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #8 Ответы: #20 |
19. Сообщение от Аноним (11), 29-Июл-22, 17:00 | +/– | ![]() |
Значит им тоже надо головой подумать и понять, что рандомные задержки проблему не решают. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #17 Ответы: #21, #33 |
20. Сообщение от OpenEcho (?), 29-Июл-22, 18:10 | +/– | ![]() |
>> srand(time(NULL)) | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #18 Ответы: #24 |
21. Сообщение от OpenEcho (?), 29-Июл-22, 18:16 | –1 +/– | ![]() |
> Значит им тоже надо головой подумать и понять, что рандомные задержки проблему | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #19 Ответы: #22 |
22. Сообщение от Аноним (22), 29-Июл-22, 19:59 | +/– | ![]() |
А, вы про это. Что будет, если клиенты отключат задержку, чтобы получить обновления раньше? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #21 Ответы: #23 |
23. Сообщение от OpenEcho (?), 29-Июл-22, 21:11 | –1 +/– | ![]() |
> А, вы про это. Что будет, если клиенты отключат задержку, чтобы получить | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #22 |
24. Сообщение от Аноним (24), 30-Июл-22, 00:28 | +/– | ![]() |
Ну вот запустил крон 10 штук процессов в одну и ту же секунду. Все 10 процессов выполнили time и получили одинаковое значение. И у всех процессов будет одинаковый начальный random seed (например, у меня сейчас 1659129796). И все 10 потом стартанут через одинаковую паузу... | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #20 Ответы: #25, #26 |
25. Сообщение от OpenEcho (?), 30-Июл-22, 13:48 | +/– | ![]() |
> Ну вот запустил крон 10 штук процессов в одну и ту же | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #24 |
26. Сообщение от Аноним (26), 30-Июл-22, 16:54 | +/– | ![]() |
Про 10 параллельно запускаемых задач нет ни слова. Это была моя попытка проиллюстрировать почему решение получилось не очень на конкретном примере. Неудачная попытка. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #24 |
27. Сообщение от john_erohin (?), 30-Июл-22, 21:34 | +1 +/– | ![]() |
> в системде хотя-бы можно посмотреть активные таймеры ОДНОЙ командой. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #16 Ответы: #28 |
28. Сообщение от Аноним (28), 31-Июл-22, 17:25 | –1 +/– | ![]() |
В системде есть юниты с типом .timer и их в типовом случае таки более одного. Это очень логичное название т.к. описывает что оно делает и как себя ведет. И кроме всего прочего там достаточно фич чтобы заодно описать и вон ту хотелку, без изобретения велика с квадратными колесами самому. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #27 |
29. Сообщение от ABATAPA (ok), 03-Авг-22, 20:47 | +1 +/– | ![]() |
root@OpenWrt:~# od | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #38 |
30. Сообщение от aa (?), 04-Авг-22, 06:47 | +3 +/– | ![]() |
man 5 crontab | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #31, #36 |
31. Сообщение от Аноним (31), 04-Авг-22, 10:41 | +1 +/– | ![]() |
не мешай человек НЕ читать маны и изобретать велосипеды | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #30 |
32. Сообщение от gapsf2 (ok), 04-Авг-22, 15:15 | +/– | ![]() |
> ls dir/with/scripts/*sh | xargs -L1 -P4 sh | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #11 Ответы: #34 |
33. Сообщение от Kuromi (ok), 05-Авг-22, 15:30 | +/– | ![]() |
Вспомните что происходит когда условная Убунта релизит новый выпуск - серверы пусть и не лежат, но ощутимо перегружены. Умные чукчи сами ждут недельку, если не ностальгируют по дайлапу | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #19 |
34. Сообщение от Аноним (11), 05-Авг-22, 23:35 | +/– | ![]() |
Любители засирать шелл-скрипты бессмысленными флажками такие любители. Лишь бы пять копеек вставить. Скрипты в папку кладет администратор, он же дает имена файлам. Администратор-дебил создаст файл с именем, часть которого превратится в команду? Кстати, сможешь составить такое имя файла? Или как всегда, лишь бы квакнуть? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #32 |
35. Сообщение от бублички (?), 07-Авг-22, 20:35 | +/– | ![]() |
> dd if=/dev/urandom bs=1 count=4 status=none | od -t u4 | head -1 | cut -c 8- | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #37 |
36. Сообщение от john_erohin (?), 08-Авг-22, 11:20 | +1 +/– | ![]() |
devuan: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #30 |
37. Сообщение от john_erohin (?), 08-Авг-22, 11:24 | +/– | ![]() |
ваша конструкция почему-то не способна выдать больше чем 65535. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #35 Ответы: #39, #40, #41 |
38. Сообщение от john_erohin (?), 08-Авг-22, 11:29 | +/– | ![]() |
> md5sum | sed 's/[a-f]//g' | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #29 |
39. Сообщение от vodz (ok), 08-Авг-22, 13:03 | +/– | ![]() |
Ну надо -N4, да и для scale=0 bc не надо: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #37 |
40. Сообщение от Аноним (11), 08-Авг-22, 13:15 | +/– | ![]() |
Для практических нужд это запредельно много. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #37 |
41. Сообщение от бублички (?), 09-Авг-22, 15:17 | +1 +/– | ![]() |
в задании итого меньше требовалось (от 0 до 3600) | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #37 Ответы: #42 |
42. Сообщение от john_erohin (?), 09-Авг-22, 15:43 | +/– | ![]() |
> в задании итого меньше требовалось | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #41 Ответы: #44 |
44. Сообщение от бублички (?), 09-Авг-22, 17:00 | +/– | ![]() |
>> в задании итого меньше требовалось | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #42 |
45.
Сообщение от snarkx![]() | +1 +/– | ![]() |
А ведь где-то для этого используют jvm, и обязательно, обязательно Spring Boot. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
46. Сообщение от A (?), 17-Авг-22, 19:23 | +/– | ![]() |
Ведь из примитивов можно всё соорудить быстро. Остальное интересно, полезно, нужно, но необходимости нет. Т.к. из примитивов соорудить можно. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #7 |
Архив | Удалить |
Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема |
Закладки на сайте Проследить за страницей |
Created 1996-2022 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |