4

У меня возникла проблема с командой пакетного файла - когда я запускаю программу, в конце пакетного файла появляется команда "ПАУЗА", однако командное окно все равно автоматически закрывается мгновенно, слишком быстро, чтобы я мог увидеть Результаты. Есть ли другой способ предотвратить закрытие командного окна или как-то получить результаты? то есть, может ли печатная версия быть отправлена, вставлена куда-нибудь?

Предыстория - я знаю, как сидеть на корточках о командной строке, поэтому, пожалуйста, если вы можете, любой ответ, пожалуйста, не доходите до объяснений уровня новичка. В конечном итоге я пытаюсь определить версии файла MS Project и точно использовал / следовал инструкциям на этом веб-сайте, однако результаты не отображаются для меня - командное окно просто мгновенно исчезает:

Веб-сайт Microsoft, который я использовал для инструкций:простой метод определения версии файла mpp (файл плана MS Project)

Текст / команды в пакетном файле:

@ECHO OFF

REM  Version.bat

ECHO Filename: %1

ECHO.

ECHO -- CHECK FOR PROJECT VERSION --

strings %1 | findstr "[0-9],.,....,...." 2>NUL

ECHO Check the following list for the first one or two digits of the string above (xx,.,....,....)

ECHO List of xx (Product Name): 8 (98), 9 (2000), 10 (2002), 11 (2003), 12 (2007), 14 (2010)

ECHO. 

ECHO -- CHECK FOR MPP FILE VERSION --

strings %1 | findstr ".MPP" 2>NUL

ECHO Check the following list for the digit(s) at the end of the string above (...MPPxx)

ECHO List of xx (Product Name): 8 (98), 9 (2000/2002/2003), 12 (2007), 14 (2010)

ECHO.

PAUSE

3 ответа3

1

Подождите

сек:

PING 127.0.0.1 -n <sec> >NUL

Подождите 10 секунд:

PING 127.0.0.1 -n 10 >NUL

Подождите 10 секунд:

powershell measure-command {sleep -s 10} ^| select TotalSeconds ^| Ft -Au

Подождите 1/4 секунды или 250 миллисекунд:

powershell measure-command {sleep -m 250} ^| select TotalMilliseconds ^| Ft -Au

Пауза

PowerShell:

powershell $host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown')

var2:

powershell $host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown') >NUL

var3:

powershell cmd /c pause ^| out-null

var4:

powershell [Console]::ReadKey()>NUL

var5:

powershell sleep

Команда паузы, пакет /cmd:

cmd /c pause
1

Я подозреваю, что в файле есть ошибка. Попробуйте вызвать пакетный файл из существующего командного окна, чтобы увидеть сообщение.

Скорее всего, проблема в том, что скрипт вызывает внешнюю программу, называемую "строками", и в соответствии с документом, на который вы ссылаетесь, это можно найти здесь. Чтобы пакетный файл мог его найти, вы должны установить его в каталог, в котором вы его запускаете, в противном случае вам потребуется изменить системную переменную среды PATH или поместить ее в системный каталог.

0

Если предыдущая команда является командным файлом, остальная часть вашего файла не выполняется. попробуйте позвонить перед предыдущими командами /

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