Ответ 1
Вы должны указать хотя бы одну команду в теле цикла.
Лучший способ для таких целей - двоеточие :
, обычно используемое в качестве no-op shell command.
Привет, я хочу написать и очистить цикл тела. Я просто хочу, чтобы счетчик циклов увеличивался, поэтому я хочу, чтобы процессор оставался занятым без какой-либо операции ввода-вывода. Вот что я написал, но это дает мне ошибку:
#!/bin/bash
for (( i = 0 ; i <= 1000000; i++ ))
do
done
[email protected]:~# ./forLoop
./forLoop: line 4: syntax error near unexpected token `done'
./forLoop: line 4: `done'
Вы должны указать хотя бы одну команду в теле цикла.
Лучший способ для таких целей - двоеточие :
, обычно используемое в качестве no-op shell command.
Вы можете поместить команду no op внутри цикла, например true
или false
(ничего не делать успешно или безуспешно).
Это будет жесткий цикл и сгорит CPU. Если вы не хотите прогревать свой компьютер в холодное утро, вы можете просто сказать i=1000000
и иметь тот же эффект, что и цикл.
Что вы пытаетесь достичь?
#!/bin/bash
let i=0
while [[ $i -le 1000000 ]]; do
let i++
done
Вы можете использовать sleep x
, если вы хотите отложить за х секунд.