2

Я хочу выполнить какую-то команду один раз, от 10 секунд до 1 минуты.

Windows at команде получает только абсолютное время, как 11:50.

Как это можно сделать? Можно ли это сделать с помощью других средств командной строки?

2 ответа2

4

Да, команда timeout может обработать это:

timeout /t 10 >NUL
echo "this message will be echoed after 10 seconds timeout"

ИЛИ ЖЕ

timeout /t 10 >NUL && echo "this message will be echoed after 10 seconds timeout"

Для получения дополнительной информации см. timeout /? , Использование >NUL позволяет избежать тайм-аута на экране, не стесняйтесь его удалять.

Если timeout не доступен в вашей системе, вы также можете использовать ping -n 10 127.0.0.1 >NUL вместо timeout /t 10 >NUL как описано здесь.

2

На Xp я использовал отдельный спящий исполняемый файл, пришёл в каком-то пакете Microsoft, работал за считанные секунды. Sleep 1

В windows 7 я переключился и начал использовать timeout /T 1 > NUL 1 представляет количество секунд. Timeout /? за помощь в этом.
Без перенаправления выходного timeout 10 отображается прерывистый обратный отсчет, который имеет другое применение.

Для меня всегда было важно найти тот, который требует минимальных ресурсов, оба эти метода, кажется, требуют очень мало усилий для компьютера.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .