Как замедлить вывод из командной строки DOS / Windows - PullRequest
3 голосов
/ 28 апреля 2010

У меня большой опыт написания php-скриптов, запускаемых в контексте веб-сервера, и почти нет опыта написания php-скриптов для CLI или GUI.

Я использовал командную строку для linux, но не имею большого опыта работы с DOS.

Допустим, у меня есть скрипт php:

<?php
echo('Hello world');

for ($idx = 0 ; $idx < 100 ; $idx++ )
    {
    echo 'I am line '. $idx .  PHP_EOL;
    }

Затем я запускаю его в командной строке DOS:

 # php helloworld.php

Теперь это ускорит вывод, и мне нужно прокрутить окно команд DOS вверх, чтобы увидеть вывод.

Я хочу видеть вывод по одному экрану за раз.

Как вы это делаете с точки зрения пользователя DOS?

Кроме того, хотя это не основной мой вопрос, мне также было бы интересно узнать, как заставить php-скрипт «ждать ввода» из командной строки.

Ответы [ 3 ]

7 голосов
/ 28 апреля 2010

php helloworld.php | more

Подробнее на more.

Подробнее о перенаправлении командной строки.

2 голосов
/ 28 апреля 2010

Вы можете перенаправить вывод в текстовый файл и обратиться к текстовому файлу после завершения выполнения команды.

C:/>dir > output.txt
0 голосов
/ 28 апреля 2010

В общем, я бы посчитал сколько угодно строк, затем остановился бы и ждал пользовательского ввода. Возможно, с «любым ключом к продолжению», если есть вероятность путаницы.

Вы также можете встроить задержку, но лично я ненавижу программы, которые отображают сообщение в течение определенного периода времени, а затем очищают его. Что если кто-то заходит в офис и отвлекает меня, как только приходит сообщение? Я предпочитаю требовать положительного ответа.

...