Липецкие форумы
18 Июня 2019, 00:04:11 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Страниц: [1]   Вниз
  Печать  
Автор Тема: Команды CMD  (Прочитано 8648 раз)
0 Пользователей и 1 Гость смотрят эту тему.
MadКОТ
Гость
« : 19 Февраля 2008, 14:24:13 »

У кого нить есть справочник по сабжу.

Мне вот нужно такой батничег написать штобы запустить прогу, ждать её завершения и по её завершению запустить другую прогу (команду).
Записан
Cheh-13
Живет на форуме
*****

Рейтинг: -48
Offline Offline

Сообщений: 5169


Ем мясо, пью чай:-)


Просмотр профиля
« Ответ #1 : 19 Февраля 2008, 14:31:12 »

help
Записан

Мы как летун, не очень. ©
MadКОТ
Гость
« Ответ #2 : 19 Февраля 2008, 14:43:38 »

Cheh-13
В хелпе ерунда одна...
Записан
Cheh-13
Живет на форуме
*****

Рейтинг: -48
Offline Offline

Сообщений: 5169


Ем мясо, пью чай:-)


Просмотр профиля
« Ответ #3 : 19 Февраля 2008, 14:46:08 »

MadКОТ
google.com
Записан

Мы как летун, не очень. ©
Cheh-13
Живет на форуме
*****

Рейтинг: -48
Offline Offline

Сообщений: 5169


Ем мясо, пью чай:-)


Просмотр профиля
« Ответ #4 : 19 Февраля 2008, 14:47:43 »

Если хочешь нормальный батник, то юзай скрипты типа kix.
Записан

Мы как летун, не очень. ©
True_BuGaGa
Живет на форуме
*****

Рейтинг: -2
Offline Offline

Сообщений: 1426



Просмотр профиля
« Ответ #5 : 19 Февраля 2008, 15:07:41 »

http://s0m.narod.ru/neos0m.html - вот возьми софтинку, в пару кликов сделаешь себе ехе, всё нужное будет выполнять.
Записан
Alucard
Заслуженный
****

Рейтинг: 29
Offline Offline

Сообщений: 645



Просмотр профиля WWW
« Ответ #6 : 19 Февраля 2008, 15:12:00 »

Цитата: "MadКОТ"
Мне вот нужно такой батничег написать штобы запустить прогу, ждать её завершения и по её завершению запустить другую прогу (команду)

Код:

@echo off
<full_path_to_program_1>\1.exe
<full_path_to_program_2>\2.exe


по завершению 1.exe запустится 2.exe...
Записан

MadКОТ
Гость
« Ответ #7 : 19 Февраля 2008, 17:43:41 »

Alucard
а если по завершению первой проги надо команду запустить? ну например route print или маршрут удалить или ещё чего?
Записан
Alucard
Заслуженный
****

Рейтинг: 29
Offline Offline

Сообщений: 645



Просмотр профиля WWW
« Ответ #8 : 19 Февраля 2008, 17:56:46 »

Цитата: "MadКОТ"
а если по завершению первой проги надо команду запустить?

значит пишешь вместо 3й строчки
Цитата: "Alucard"
<full_path_to_program_2>\2.exe

команду на удаление маршрута.. route delete <>

p.s. вообще какая цель? что должен делать этот cmd скрипт?
Записан

MadКОТ
Гость
« Ответ #9 : 19 Февраля 2008, 18:16:12 »

Alucard
ой ды параноик один попросил узнать... там што то прогу запустить, открыть для неё маршрут, по завершению закрыть маршрут....
чот я не понял синтаксиса... :?
псы. чего в асю не отвечаеш?
Записан
NeO
Живет на форуме
*****

Рейтинг: -37
Offline Offline

Сообщений: 2611


Просмотр профиля WWW
« Ответ #10 : 19 Февраля 2008, 18:22:38 »

Без знания матчасти паранойа бесполезна
Записан

Misha_usm
Живет на форуме
*****

Рейтинг: 15
Offline Offline

Сообщений: 2827



Просмотр профиля
« Ответ #11 : 19 Февраля 2008, 20:31:44 »

MadКОТ

Открыть для неё диапозон IP на внехе чтоли, а после игры закрыть?
Записан
йцук
Гость
« Ответ #12 : 19 Февраля 2008, 21:24:05 »

MadКОТ
F1 в винде и курить до просветления....
Записан
sаккаba
Постоялец
**

Рейтинг: 1
Offline Offline

Сообщений: 185



Просмотр профиля
« Ответ #13 : 20 Февраля 2008, 07:57:46 »

Цитата: "MadКОТ"
В хелпе ерунда одна...

Пуск>Справка и поддержка. Чего там толко нету.
И почему все тупо игнорируют это? там столько всего много есть. Если бы не ленились этим пользоваться то подавляющее большинство вопросов на этом форуме не было бы. И что самое интересное там всё разжёванно и на РУССКОМ!
Записан

Barmen
Заслуженный
****

Рейтинг: -13
Offline Offline

Сообщений: 552



Просмотр профиля
« Ответ #14 : 20 Февраля 2008, 10:14:43 »

Цитата: "sаккаba"
Пуск>Справка и поддержка. Чего там толко нету.

расширенного cmd там точно нету, про который похоже MadКОТ
и спрашивал. Точно не скажу, но в гугле наверное можно найти эти команды.
PS по большей части они под win2k3 заточены.
Записан

sаккаba
Постоялец
**

Рейтинг: 1
Offline Offline

Сообщений: 185



Просмотр профиля
« Ответ #15 : 20 Февраля 2008, 10:28:02 »

Barmen
Введи в поиске (справки) "Справочник по параметрам командной строки" и сиди кури, всё там есть и даже больше чем надо
В том числе:
Код:
Общие сведения о командной оболочкеКомандная оболочка  это отдельный программный продукт, который обеспечивает прямую связь между пользователем и операционной системой. Текстовый пользовательский интерфейс командной строки предоставляет среду, в которой выполняются приложения и служебные программы с текстовым интерфейсом. В командной оболочке программы выполняются и результат выполнения отображается на экране в виде, сходном с интерпретатором Command.com MS-DOS. Командная оболочка Windows XP использует интерпретатор команд Cmd.exe, который загружает приложения и направляет поток данных между приложениями, для перевода введенной команды в понятный системе вид.

Имеется возможность использовать командную оболочку для создания и редактирования пакетных файлов (также называемых сценариями), что позволит автоматизировать выполнение обычных задач. Например, можно использовать сценарии для автоматизации управления учетными записями пользователей и ежедневной архивацией в нерабочие часы. Также можно использовать сервер сценариев Windows, CScript.exe, для выполнения в командной оболочке сложных сценариев. Выполнение операций с помощью пакетных файлов является более эффективным, чем с помощью интерфейса пользователя. Пакетные файлы принимают все команды, доступные из командной строки. Дополнительные сведения о пакетных файлах и создании сценариев см. в разделе Использование пакетных файлов.

Имеется возможность настроить окно командной строки для облегчения просмотра и для увеличения контроля за выполнением программ. Дополнительные сведения о настройке окна командной строки см. в разделе Настройка командной строки.

Использование синтаксиса команд
Синтаксическая структура выводится в том порядке, в котором следует вводить команду и следующие за ней параметры, если они есть. Следующий пример команды xcopy иллюстрирует разнообразие синтаксических форматов текста.

xcopy источник [результат] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:мм-дд-гггг]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a|/m}] [/n] [/o] [/x] [/exclude:файл1[+[файл2]][+[файл3]] [{/y|/-y}] [/z]

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

Форматирование
Формат Значение
Курсив Данные, которые должен ввести пользователь
Полужирный шрифт Элементы, которые следует вводить точно, как показано
Пропуск (...) Параметры могут повторяться несколько раз в командной строке
В квадратных скобках ([]) Необязательные элементы
В фигурных скобках ({}); варианты разделены вертикальной чертой (|). Пример: {четные|нечетные} Набор значений, из которого можно выбрать только одно значение
Шрифт Courier Текст кода или выхода программы
 
Использование нескольких команд и символов условной обработки
Можно выполнять несколько команд из одной командной строки или сценария с помощью сиволов условной обработки. При использовании нескольких команд, содержащих символы условной обработки, выполнение команд, стоящих справа от символа условной обработки, будет проводиться в зависимости от результатов выполнения команды, стоящей слева от символа. Например, требуется, чтобы команда выполнялась, только если предыдущая команда не была выполнена успешно. Или требуется, чтобы команда выполнялась, только если предыдущая команда была выполнена успешно.

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

Символ Синтаксис Определение
& [...] команда1 & команда2 Используется для разделения нескольких команд в одной командной строке. В Cmd.exe выполняется первая команда, затем вторая команда.
&& [...] команда1 && команда2 Запускает команду, стоящую за символом &&, только если команда, стоящая перед этим символом была выполнена успешно. В Cmd.exe выполняется первая команда. Вторая команда выполняется, только если первая была выполнена успешно.  
|| [...] команда1 || команда2 Запускает команду, стоящую за символом ||, только если команда, стоящая перед символом || не была выполнена. В Cmd.exe выполняется первая команда. Вторая команда выполняется, только если первая не была выполнена (полученный код ошибки превышает ноль).
( ) [...] (команда1 & команда2)  Используется для группировки или вложения команд.
; или , команда1 параметр1;параметр2 Используется для разделения параметров команды.

 Примечания

Амперсанд (&), вертикальная черта (|) и скобки ( ) являются специальными символами, которым должен предшествовать управляющий символ (^) или кавычки, если эти символы передаются в качестве аргументов.
Если команда завершает операцию успешно, возвращается нулевой (0) код ошибки или не возвращается никакого кода. Дополнительные сведения о кодах завершения см. в разделе Пакеты Microsoft Windows Resource Kits.
Вложенные командные оболочки
Имеется возможность вкладывать командные оболочки в Cmd.exe, открывая новый экземпляр Cmd.exe из командной строки. По умолчанию каждый экземпляр Cmd.exe наследует среду своего родительского приложения Cmd.exe. Вложение экземпляров Cmd.exe позволяет вносить в локальную среду изменения, которые не повлияют на родительское приложение Cmd.exe. Это позволяет сохранять исходную среду Cmd.exe и возвращаться к ней после удаления вложенной командной оболочки. Изменения вложенной командной оболочки не сохраняются.

Чтобы создать вложенную командную оболочку, в командной строке введите:

cmd

Появится сообщение следующего вида:

Microsoft (R) Windows XP (TM)
(C) Copyright 1985-2001 Microsoft Corp.
Чтобы закрыть все вложенные командные оболочки, введите команду exit.

Можно еще уже локализовать изменения в экземпляре Cmd.exe (или в сценарии) с помощью команд setlocal и endlocal. Команда setlocal создает локальную область, а endlocal ее удаляет. Любые изменения, сделанные внутри области, созданной командами setlocal и endlocal, не учитываются; таким образом исходная среда остается без изменений. С помощью этих команд можно создать до 32 вложенных областей. Дополнительные сведения о командах setlocal и endlocal см. в разделах Setlocal и Endlocal.

Использование переменных среды в Cmd.exe
Среда командной оболочки Cmd.exe определяется переменными, задающими поведение командной оболочки и операционной системы. Имеется возможность определить поведение среды командной оболочки или среды всей операционной системы с помощью двух типов переменных среды: системных и локальных. Системные переменные среды определяют поведение глобальной среды операционной системы. Локальные переменные среды определяют поведение среды в данном экземпляре Cmd.exe.

Системные переменные среды заданы заранее в операционной системе и доступны для всех процессов Windows XP. Только пользователи с привилегиями администратора могут изменять эти переменные. Эти переменные наиболее часто используются в сценариях входа в систему.

Локальные переменные среды доступны, только когда пользователь, для которого они были созданы, вошел в систему. Локальные переменные из куста HKEY_CURRENT_USER подходят только для текущего пользователя, но определяют поведение глобальной среды операционной системы.

В следующем списке представлены различные типы переменных в порядке убывания приоритета.

Встроенные системные переменные
Системные переменные куста HKEY_LOCAL_MACHINE
Локальные переменные куста HKEY_CURRENT_USER
Все переменные среды и пути указаны в файле Autoexec.bat.
Все переменные среды и пути указаны в сценарии входа в систему (если он имеется).
Переменные, используемые интерактивно в сценарии или пакетном файле
В командной оболочке каждый экземпляр Cmd.exe наследует среду своего родительского приложения. Поэтому можно изменять переменные в новой среде Cmd.exe, что не повлияет на среду родительского приложения.

В следующей таблице приведен список системных и локальных переменных среды для Windows XP.

Переменная Тип Описание
%ALLUSERSPROFILE% Локальная Возвращает размещение профиля «All Users».
%APPDATA% Локальная Возвращает используемое по умолчанию размещение данных приложений.
%CD% Локальная Возвращает путь к текущей папке.
%CMDCMDLINE% Локальная Возвращает строку команд, с помощью которой был запущен данный экземпляр Cmd.exe.
%CMDEXTVERSION% Системная Возвращает номер версии текущих расширений обработчика команд.
%COMPUTERNAME%  Системная Возвращает имя компьютера.
%COMSPEC%  Системная Возвращает путь к исполняемой командной оболочке.
%DATE%  Системная Возвращает текущие данные. Использует тот же формат, что и команда date /t. Создается командой Cmd.exe. Дополнительные сведения о команде date см. в разделе Date.
%ERRORLEVEL%  Системная Возвращает код ошибки последней использовавшейся команды. Значение, не равное нуля, обычно указывает на наличие ошибки.
%HOMEDRIVE%  Системная Возвращает имя диска локальной рабочей станции, связанного с основным каталогом пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
%HOMEPATH%  Системная Возвращает полный путь к основному каталогу пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
%HOMESHARE%  Системная Возвращает сетевой путь к общему основному каталогу пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
%LOGONSEVER%  Локальная Возвращает имя контроллера домена, который проверял подлинность текущей сессии.
%NUMBER_OF_PROCESSORS%  Системная Задает количество процессоров, установленных на компьютере.
%OS%  Системная Возвращает имя операционной системы. При использовании Windows 2000 имя операционной системы отображается как Windows_NT.
%PATH% Системная Указывает путь поиска для исполняемых файлов.
%PATHEXT% Системная Возвращает список расширений файлов, которые рассматриваются операционной системой как исполняемые.
%PROCESSOR_ARCHITECTURE%  Системная Возвращает архитектуру процессора. Значения: x86, IA64.
%PROCESSOR_IDENTFIER% Системная Возвращает описание процессора.
%PROCESSOR_LEVEL%  Системная Возвращает номер модели процессора, установленного на компьютере.
%PROCESSOR_REVISION% Системная Возвращает номер модификации процессора.  
%PROMPT% Локальная Возвращает параметры командной строки для текущего интерпретатора. Создается командой Cmd.exe.
%RANDOM% Системная Возвращает произвольное десятичное число от 0 до 32767. Создается командой Cmd.exe.
%SYSTEMDRIVE% Системная Возвращает имя диска, содержащего корневой каталог Windows XP (т. е. системный каталог).
%SYSTEMROOT%  Системная Возвращает размещение системного каталога Windows XP.
%TEMP% и %TMP% Системная и пользовательская Возвращает временные папки, по умолчанию используемые приложениями, которые доступны пользователям, выполнившим вход в систему. Некоторые приложения требуют переменную TEMP, другие  переменную TMP.
%TIME% Системная Возвращает текущее время. Использует тот же формат, что и команда time /t. Создается командой Cmd.exe. Дополнительные сведения о команде time см. в разделе Time.
%USERDOMAIN% Локальная Возвращает имя домена, содержащего список учетных записей пользователей.
%USERNAME% Локальная Возвращает имя пользователя, выполнившего вход в систему.
%USERPROFILE% Локальная Возвращает размещение профиля для текущего пользователя.
%WINDIR% Системная Возвращает размещение каталога операционной системы.

Установка переменных среды
Используйте команду set для создания, удаления или отображения переменных среды. Команда set изменяет переменные только в среде текущей оболочки.

Чтобы отобразить переменную, в командной строке введите:

set имя_переменной

Чтобы добавить переменную, в командной строке введите:

set variablename=значение

Чтобы удалить переменную, в командной строке введите:

set имя_переменной=

Имеется возможность использовать большинство символов в качестве значений переменных, в том числе пробел. При использовании специальных символов, таких как <, >, &, или ^, перед ними следует помещать управляющий символ (^) или кавычки. При использовании кавычек они включаются в значение переменной, так как все символы, следующие после знака равенства принимаются за значение переменной. Учтите следующие примеры.

Чтобы создать значение переменной new&name ,введите:
set varname=new^&name

Чтобы создать значение переменной "new&name" ,введите:
set varname="new&name"

При вводе в командной строке set varname=new&name появляется следующее сообщение об ошибке:
"'name' is not recognized as an internal or external command, operable program or batch file."
В именах переменных регистр символов не учитывается. Однако, команда set отображает значение переменной так, как оно было введено. Можно комбинировать символы нижнего и верхнего регистра в именах переменных, чтобы облегчить восприятие кода (например, ИмяПользователя).

 Примечания

Максимальный размер отдельной переменной среды составляет 8192 байта.
Максимальный общий размер всех переменных среды, включая имена переменных и знак равенства, составляет 65 536 Кбайт.
Подстановка значений в переменные среды
Чтобы иметь возможность подставлять значения в переменную среды из командной строки или из сценариев, следует заключить имя соответствующей переменной в символы процентов (%имя_переменной%). Символы процентов указывают на то, что Cmd.exe должен обратиться к значениям переменных, а не делать посимвольное сравнение. После определения значения для имени переменной, заключите имя переменной в символы процентов. Cmd.exe проводит поиск всех вхождений имени переменной и заменяет его на определенное значение переменной. Например, требуется создать сценарий, содержащий различные значения (например, имена пользователей), и требуется определить соответствующее значение переменной среды USERNAME для каждого пользователя. Для этого следует написать сценарий с использованием переменной USERNAME, заключенной в кавычки. При выполнении сценария Cmd.exe заменит вхождения %USERNAME% соответствующими значениями, что избавит от необходимости делать это вручную для каждого пользователя. Подстановка значений не является рекурсивной. Cmd.exe проверяет переменные один раз. Дополнительные сведения о подстановке значений в переменные см. в разделах For и Call.
Записан

Barmen
Заслуженный
****

Рейтинг: -13
Offline Offline

Сообщений: 552



Просмотр профиля
« Ответ #16 : 20 Февраля 2008, 10:30:45 »

sаккаba
и где ты тут видишь описание команды timeout?
Записан

sаккаba
Постоялец
**

Рейтинг: 1
Offline Offline

Сообщений: 185



Просмотр профиля
« Ответ #17 : 20 Февраля 2008, 10:31:48 »

Barmen
Введи в поиске (справки) "Справочник по параметрам командной строки" и сиди кури, всё там есть и даже больше чем надо
В том числе:
Код:
Общие сведения о командной оболочкеКомандная оболочка  это отдельный программный продукт, который обеспечивает прямую связь между пользователем и операционной системой. Текстовый пользовательский интерфейс командной строки предоставляет среду, в которой выполняются приложения и служебные программы с текстовым интерфейсом. В командной оболочке программы выполняются и результат выполнения отображается на экране в виде, сходном с интерпретатором Command.com MS-DOS. Командная оболочка Windows XP использует интерпретатор команд Cmd.exe, который загружает приложения и направляет поток данных между приложениями, для перевода введенной команды в понятный системе вид.

Имеется возможность использовать командную оболочку для создания и редактирования пакетных файлов (также называемых сценариями), что позволит автоматизировать выполнение обычных задач. Например, можно использовать сценарии для автоматизации управления учетными записями пользователей и ежедневной архивацией в нерабочие часы. Также можно использовать сервер сценариев Windows, CScript.exe, для выполнения в командной оболочке сложных сценариев. Выполнение операций с помощью пакетных файлов является более эффективным, чем с помощью интерфейса пользователя. Пакетные файлы принимают все команды, доступные из командной строки. Дополнительные сведения о пакетных файлах и создании сценариев см. в разделе Использование пакетных файлов.

Имеется возможность настроить окно командной строки для облегчения просмотра и для увеличения контроля за выполнением программ. Дополнительные сведения о настройке окна командной строки см. в разделе Настройка командной строки.

Использование синтаксиса команд
Синтаксическая структура выводится в том порядке, в котором следует вводить команду и следующие за ней параметры, если они есть. Следующий пример команды xcopy иллюстрирует разнообразие синтаксических форматов текста.

xcopy источник [результат] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:мм-дд-гггг]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a|/m}] [/n] [/o] [/x] [/exclude:файл1[+[файл2]][+[файл3]] [{/y|/-y}] [/z]

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

Форматирование
Формат Значение
Курсив Данные, которые должен ввести пользователь
Полужирный шрифт Элементы, которые следует вводить точно, как показано
Пропуск (...) Параметры могут повторяться несколько раз в командной строке
В квадратных скобках ([]) Необязательные элементы
В фигурных скобках ({}); варианты разделены вертикальной чертой (|). Пример: {четные|нечетные} Набор значений, из которого можно выбрать только одно значение
Шрифт Courier Текст кода или выхода программы
 
Использование нескольких команд и символов условной обработки
Можно выполнять несколько команд из одной командной строки или сценария с помощью сиволов условной обработки. При использовании нескольких команд, содержащих символы условной обработки, выполнение команд, стоящих справа от символа условной обработки, будет проводиться в зависимости от результатов выполнения команды, стоящей слева от символа. Например, требуется, чтобы команда выполнялась, только если предыдущая команда не была выполнена успешно. Или требуется, чтобы команда выполнялась, только если предыдущая команда была выполнена успешно.

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

Символ Синтаксис Определение
& [...] команда1 & команда2 Используется для разделения нескольких команд в одной командной строке. В Cmd.exe выполняется первая команда, затем вторая команда.
&& [...] команда1 && команда2 Запускает команду, стоящую за символом &&, только если команда, стоящая перед этим символом была выполнена успешно. В Cmd.exe выполняется первая команда. Вторая команда выполняется, только если первая была выполнена успешно.  
|| [...] команда1 || команда2 Запускает команду, стоящую за символом ||, только если команда, стоящая перед символом || не была выполнена. В Cmd.exe выполняется первая команда. Вторая команда выполняется, только если первая не была выполнена (полученный код ошибки превышает ноль).
( ) [...] (команда1 & команда2)  Используется для группировки или вложения команд.
; или , команда1 параметр1;параметр2 Используется для разделения параметров команды.

 Примечания

Амперсанд (&), вертикальная черта (|) и скобки ( ) являются специальными символами, которым должен предшествовать управляющий символ (^) или кавычки, если эти символы передаются в качестве аргументов.
Если команда завершает операцию успешно, возвращается нулевой (0) код ошибки или не возвращается никакого кода. Дополнительные сведения о кодах завершения см. в разделе Пакеты Microsoft Windows Resource Kits.
Вложенные командные оболочки
Имеется возможность вкладывать командные оболочки в Cmd.exe, открывая новый экземпляр Cmd.exe из командной строки. По умолчанию каждый экземпляр Cmd.exe наследует среду своего родительского приложения Cmd.exe. Вложение экземпляров Cmd.exe позволяет вносить в локальную среду изменения, которые не повлияют на родительское приложение Cmd.exe. Это позволяет сохранять исходную среду Cmd.exe и возвращаться к ней после удаления вложенной командной оболочки. Изменения вложенной командной оболочки не сохраняются.

Чтобы создать вложенную командную оболочку, в командной строке введите:

cmd

Появится сообщение следующего вида:

Microsoft (R) Windows XP (TM)
(C) Copyright 1985-2001 Microsoft Corp.
Чтобы закрыть все вложенные командные оболочки, введите команду exit.

Можно еще уже локализовать изменения в экземпляре Cmd.exe (или в сценарии) с помощью команд setlocal и endlocal. Команда setlocal создает локальную область, а endlocal ее удаляет. Любые изменения, сделанные внутри области, созданной командами setlocal и endlocal, не учитываются; таким образом исходная среда остается без изменений. С помощью этих команд можно создать до 32 вложенных областей. Дополнительные сведения о командах setlocal и endlocal см. в разделах Setlocal и Endlocal.

Использование переменных среды в Cmd.exe
Среда командной оболочки Cmd.exe определяется переменными, задающими поведение командной оболочки и операционной системы. Имеется возможность определить поведение среды командной оболочки или среды всей операционной системы с помощью двух типов переменных среды: системных и локальных. Системные переменные среды определяют поведение глобальной среды операционной системы. Локальные переменные среды определяют поведение среды в данном экземпляре Cmd.exe.

Системные переменные среды заданы заранее в операционной системе и доступны для всех процессов Windows XP. Только пользователи с привилегиями администратора могут изменять эти переменные. Эти переменные наиболее часто используются в сценариях входа в систему.

Локальные переменные среды доступны, только когда пользователь, для которого они были созданы, вошел в систему. Локальные переменные из куста HKEY_CURRENT_USER подходят только для текущего пользователя, но определяют поведение глобальной среды операционной системы.

В следующем списке представлены различные типы переменных в порядке убывания приоритета.

Встроенные системные переменные
Системные переменные куста HKEY_LOCAL_MACHINE
Локальные переменные куста HKEY_CURRENT_USER
Все переменные среды и пути указаны в файле Autoexec.bat.
Все переменные среды и пути указаны в сценарии входа в систему (если он имеется).
Переменные, используемые интерактивно в сценарии или пакетном файле
В командной оболочке каждый экземпляр Cmd.exe наследует среду своего родительского приложения. Поэтому можно изменять переменные в новой среде Cmd.exe, что не повлияет на среду родительского приложения.

В следующей таблице приведен список системных и локальных переменных среды для Windows XP.

Переменная Тип Описание
%ALLUSERSPROFILE% Локальная Возвращает размещение профиля «All Users».
%APPDATA% Локальная Возвращает используемое по умолчанию размещение данных приложений.
%CD% Локальная Возвращает путь к текущей папке.
%CMDCMDLINE% Локальная Возвращает строку команд, с помощью которой был запущен данный экземпляр Cmd.exe.
%CMDEXTVERSION% Системная Возвращает номер версии текущих расширений обработчика команд.
%COMPUTERNAME%  Системная Возвращает имя компьютера.
%COMSPEC%  Системная Возвращает путь к исполняемой командной оболочке.
%DATE%  Системная Возвращает текущие данные. Использует тот же формат, что и команда date /t. Создается командой Cmd.exe. Дополнительные сведения о команде date см. в разделе Date.
%ERRORLEVEL%  Системная Возвращает код ошибки последней использовавшейся команды. Значение, не равное нуля, обычно указывает на наличие ошибки.
%HOMEDRIVE%  Системная Возвращает имя диска локальной рабочей станции, связанного с основным каталогом пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
%HOMEPATH%  Системная Возвращает полный путь к основному каталогу пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
%HOMESHARE%  Системная Возвращает сетевой путь к общему основному каталогу пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
%LOGONSEVER%  Локальная Возвращает имя контроллера домена, который проверял подлинность текущей сессии.
%NUMBER_OF_PROCESSORS%  Системная Задает количество процессоров, установленных на компьютере.
%OS%  Системная Возвращает имя операционной системы. При использовании Windows 2000 имя операционной системы отображается как Windows_NT.
%PATH% Системная Указывает путь поиска для исполняемых файлов.
%PATHEXT% Системная Возвращает список расширений файлов, которые рассматриваются операционной системой как исполняемые.
%PROCESSOR_ARCHITECTURE%  Системная Возвращает архитектуру процессора. Значения: x86, IA64.
%PROCESSOR_IDENTFIER% Системная Возвращает описание процессора.
%PROCESSOR_LEVEL%  Системная Возвращает номер модели процессора, установленного на компьютере.
%PROCESSOR_REVISION% Системная Возвращает номер модификации процессора.  
%PROMPT% Локальная Возвращает параметры командной строки для текущего интерпретатора. Создается командой Cmd.exe.
%RANDOM% Системная Возвращает произвольное десятичное число от 0 до 32767. Создается командой Cmd.exe.
%SYSTEMDRIVE% Системная Возвращает имя диска, содержащего корневой каталог Windows XP (т. е. системный каталог).
%SYSTEMROOT%  Системная Возвращает размещение системного каталога Windows XP.
%TEMP% и %TMP% Системная и пользовательская Возвращает временные папки, по умолчанию используемые приложениями, которые доступны пользователям, выполнившим вход в систему. Некоторые приложения требуют переменную TEMP, другие  переменную TMP.
%TIME% Системная Возвращает текущее время. Использует тот же формат, что и команда time /t. Создается командой Cmd.exe. Дополнительные сведения о команде time см. в разделе Time.
%USERDOMAIN% Локальная Возвращает имя домена, содержащего список учетных записей пользователей.
%USERNAME% Локальная Возвращает имя пользователя, выполнившего вход в систему.
%USERPROFILE% Локальная Возвращает размещение профиля для текущего пользователя.
%WINDIR% Системная Возвращает размещение каталога операционной системы.

Установка переменных среды
Используйте команду set для создания, удаления или отображения переменных среды. Команда set изменяет переменные только в среде текущей оболочки.

Чтобы отобразить переменную, в командной строке введите:

set имя_переменной

Чтобы добавить переменную, в командной строке введите:

set variablename=значение

Чтобы удалить переменную, в командной строке введите:

set имя_переменной=

Имеется возможность использовать большинство символов в качестве значений переменных, в том числе пробел. При использовании специальных символов, таких как <, >, &, или ^, перед ними следует помещать управляющий символ (^) или кавычки. При использовании кавычек они включаются в значение переменной, так как все символы, следующие после знака равенства принимаются за значение переменной. Учтите следующие примеры.

Чтобы создать значение переменной new&name ,введите:
set varname=new^&name

Чтобы создать значение переменной "new&name" ,введите:
set varname="new&name"

При вводе в командной строке set varname=new&name появляется следующее сообщение об ошибке:
"'name' is not recognized as an internal or external command, operable program or batch file."
В именах переменных регистр символов не учитывается. Однако, команда set отображает значение переменной так, как оно было введено. Можно комбинировать символы нижнего и верхнего регистра в именах переменных, чтобы облегчить восприятие кода (например, ИмяПользователя).

 Примечания

Максимальный размер отдельной переменной среды составляет 8192 байта.
Максимальный общий размер всех переменных среды, включая имена переменных и знак равенства, составляет 65 536 Кбайт.
Подстановка значений в переменные среды
Чтобы иметь возможность подставлять значения в переменную среды из командной строки или из сценариев, следует заключить имя соответствующей переменной в символы процентов (%имя_переменной%). Символы процентов указывают на то, что Cmd.exe должен обратиться к значениям переменных, а не делать посимвольное сравнение. После определения значения для имени переменной, заключите имя переменной в символы процентов. Cmd.exe проводит поиск всех вхождений имени переменной и заменяет его на определенное значение переменной. Например, требуется создать сценарий, содержащий различные значения (например, имена пользователей), и требуется определить соответствующее значение переменной среды USERNAME для каждого пользователя. Для этого следует написать сценарий с использованием переменной USERNAME, заключенной в кавычки. При выполнении сценария Cmd.exe заменит вхождения %USERNAME% соответствующими значениями, что избавит от необходимости делать это вручную для каждого пользователя. Подстановка значений не является рекурсивной. Cmd.exe проверяет переменные один раз. Дополнительные сведения о подстановке значений в переменные см. в разделах For и Call.

И это только по одному запросу и даже инет не нужен!!!
Заметил странную тенденцию: Людям стало лень таскать свою задницу на своих двоих и они придумали машину, стало лень стирать и придумали стиральную машинку, а сейчас уже лень мозг напречь и вследствие этого ничего уже не может придумать
Записан

sаккаba
Постоялец
**

Рейтинг: 1
Offline Offline

Сообщений: 185



Просмотр профиля
« Ответ #18 : 20 Февраля 2008, 10:34:00 »

Цитата: "Barmen"
sаккаba
и где ты тут видишь описание команды timeout?
А при чём тут таймаут? :shock:
Записан

Cheh-13
Живет на форуме
*****

Рейтинг: -48
Offline Offline

Сообщений: 5169


Ем мясо, пью чай:-)


Просмотр профиля
« Ответ #19 : 20 Февраля 2008, 10:36:29 »

sаккаba
Ну не любит народ читать мануалы и хелп)))
Записан

Мы как летун, не очень. ©
Barmen
Заслуженный
****

Рейтинг: -13
Offline Offline

Сообщений: 552



Просмотр профиля
« Ответ #20 : 20 Февраля 2008, 10:50:48 »

Цитата: "sаккаba"
А при чём тут таймаут? Shocked

Тоже команда такая есть в cmd, только вот справка и поддержка ее упрямо не хочет показывать... МБ я один такой?
Записан

Alucard
Заслуженный
****

Рейтинг: 29
Offline Offline

Сообщений: 645



Просмотр профиля WWW
« Ответ #21 : 20 Февраля 2008, 11:01:35 »

Цитата: "Barmen"
только вот справка и поддержка ее упрямо не хочет показывать..

да неужели  :lol:
Цитировать

This content might have been updated. For the most recent version, see the TechCenter Web site.TimeoutPauses the command processor for the specified number of seconds.

Syntax
timeout /t TimeoutInSeconds [/nobreak]

Parameters
/t TimeoutInSeconds
Specifies the decimal number of seconds (between -1 and 99999) to wait before the command processor continues processing. The value -1 causes the computer to wait indefinitely for a keystroke.
/nobreak
Specifies to ignore a user key stroke.
/?
Displays help at the command prompt.
Remarks
The timeout command is typically used in batch files.
A user keystroke resumes the command processor execution immediately, even if the time-out period has not expired.
Timeout is similar to the MS-DOS pause command when you use it in conjunction with the sleep command.
Examples
To pause the command processor for ten seconds, type:

timeout /t 10

To pause the command processor for 100 seconds and to ignore any key press, type:

timeout /t 100 /nobreak

To pause the command processor indefinitely until a key is pressed, type:

timeout /t -1

Записан

Barmen
Заслуженный
****

Рейтинг: -13
Offline Offline

Сообщений: 552



Просмотр профиля
« Ответ #22 : 20 Февраля 2008, 11:27:46 »

У мну упрямо пытался показывать только таймаут на netsh'e.
Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by SMF 1.1.16 | SMF © 2006, Simple Machines
Minerva Theme | The Simple Machines Forum Directory