Я пробую такую строку:
for i in {1..600}; do wget http://example.com/search/link $i % 5; done;
То, что я пытаюсь получить в качестве вывода:
wget http://example.com/search/link0
wget http://example.com/search/link1
wget http://example.com/search/link2
wget http://example.com/search/link3
wget http://example.com/search/link4
wget http://example.com/search/link0
Но то, что я на самом деле получаю, это просто:
wget http://example.com/search/link
bash
возвращает только остаток , а не математический результат по модулю . Это означает, что, хотя математически это и-12 mod 10
есть8
, bash вычислит это как-2
. Вы можете проверить это с помощью simpleecho $((-12 % 10))
(-2
) и сравнить сpython3 python3 -c "print(-12 % 10)"
(8
).