else if (choice=='q')
{
qtr++;
switch (qtr)
{
case(2): strcpy(qtrs,"nd");break;
case(3):
{
strcpy(qtrs,"rd");
cout<<"End of First Half!!!";
cout<<" hteam "<<"["<<hteam<<"] "<<hs;
cout<<" vteam "<<" ["<<vteam;
cout<<"] ";
cout<<vs;dwn=1;yd=10;
if (beginp=='H') team='V';
else team='H';
break;
}
case(4): strcpy(qtrs,"th");break;
Точного эквивалента нет. Однако существует собственная команда DOS "more", у которой есть опция + n, которая начнет вывод файла после n-й строки:
Подсказка DOS:
C:\>more +2 myfile.txt
Вышеупомянутая команда выведет все после первых двух строк.
На самом деле это противоположность Unix head :
Unix console:
root@server:~$ head -2 myfile.txt
Вышеупомянутая команда напечатает только первые 2 строки файла.
Не думаю, что есть выход из коробки. В DOS такой команды нет, и пакетные файлы далеко не ограничены для ее моделирования (без особых проблем).
На этой странице есть бесплатная утилита head
, которую вы можете использовать. Я еще не пробовал.
Ну, это будет сделать , но это примерно так же быстро, как кажется (примерно O (n * m), где n - количество отображаемых строк, а m - общее количество строк в файле):
for /l %l in (1,1,10) do @for /f "tokens=1,2* delims=:" %a in ('findstr /n /r "^" filename ^| findstr /r "^%l:"') do @echo %b
Где «10» - это количество строк, которые вы хотите напечатать, а «filename» - это имя файла.
При использовании more + n, о котором уже упоминал Мэтт, чтобы избежать пауз в длинных файлах, попробуйте следующее:
more +1 myfile.txt> con
Когда вы перенаправляете вывод из more, он не Пауза - и тут ты перенаправляешь на консоль. Вы можете аналогичным образом перенаправить на другой файл, подобный этому, без дополнительных пауз, если это ваш желаемый конечный результат. Используйте>, чтобы перенаправить в файл и перезаписать его, если он уже существует, или >>, чтобы добавить в существующий файл. (Можно использовать любой из них для перенаправления на con.)
Если вам нужна команда head, один из простых способов получить ее - это установить Cygwin. Тогда в вашем распоряжении будут все инструменты UNIX.
Если это не лучшее решение, вы можете попробовать использовать findstr и выполнить поиск индикатора конца строки.
findstr в MSDN : http://technet.microsoft.com/en-us/library/bb490907.aspx
Вы можете получить CoreUtils из GnuWin32 , который представляет собой набор стандартных инструментов unix, перенесенных на Windows.
Он, среди прочего, содержит head.