- Описание команды start
- Формат командной строки start
- Параметры командной строки start
- Примеры использования start
Описание команды start
Команда start позволяет запустить указанную программу или команду в отдельном окне.
При запуске команды start без параметров будет открыто новое окно интерпретатора команд CMD.
Вы можете запускать неисполняемые файлы через их файловую ассоциацию, введя имя файла в качестве команды. Для вызова неисполняемых файлов через механизм сопоставления типов файлов достаточно просто ввести имя файла в командной строке. Например, выполнив команду “start test.docx” будет запущено приложение, сопоставленное расширению имени файла .docx. Сведения о создании подобных сопоставлений из пакетных файлов приведены в описаниях команд ASSOC и FTYPE.
При выполнении командной строки, первым элементом которой является текстовая строка «CMD» без расширения имени файла или указания пути, она заменяется значением переменной COMSPEC. Это предотвращает запуск CMD.EXE из текущей активной папки, если таковая программа там имеется.
При запуске 32-разрядного приложения с графическим пользовательским интерфейсом (GUI), обработчик команд CMD.EXE не будет ожидать завершения работы приложения перед возвратом к приглашению командной строки. Это поведение не возникает, если вы запускаете приложение из командного сценария.
Если первый элемент командной строки не содержит расширения имени файла, обработчик команд CMD.EXE использует значение переменной среды PATHEXT, чтобы определить расширения имен исполняемых файлов и порядок поиска нужного файла. По умолчанию для переменной PATHEXT задается значение:
.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
Получить значение переменной PATHEXT можно выполнив команду “echo %PATHEXT%”
Заметьте, что данный синтаксис аналогичен синтаксису для переменной PATH, то есть отдельные элементы разделяются точкой с запятой.
Команда start при выполнении ищет указанный исполняемый файл, и если он будет найден, исполняемый файл запустится независимо от текущего рабочего каталога.
Если при поиске исполняемого файла нет соответствия ни одному из расширений, выполняется проверка соответствия указанного имени папки. Если имя папки соответствует указанному, то команда START запускает EXPLORER для этого пути. Если такое действие выполняется из командной строки, то оно эквивалентно выполнению команды CD /D для указанного пути. Так, например, команда
start c:\users
откроет папку c:\users в окне проводника.
Выполнение команда start с параметры /SEPARATE и /SHARED не поддерживаются на 64-разрядных платформах.
Указание параметра /NODE позволяет создавать процессы таким образом, чтобы использовать местоположение памяти в системах NUMA (англ. Non-Uniform Memory Access «неравномерный доступ к памяти» или Non-Uniform Memory Architecture «архитектура с неравномерной памятью») — схема реализации компьютерной памяти, используемая в мультипроцессорных системах, когда время доступа к памяти определяется её расположением по отношению к процессору.
Например, два процесса, которые взаимодействуют друг с другом через общую память, могут совместно использовать один и тот же предпочтительный узел NUMA, чтобы минимизировать задержки памяти. Память выделяется из одного узла NUMA по возможности, что позволяет процессам выполняться на процессорах вне указанного узла.
start /NODE 1 soft1.exe
start /NODE 1 soft2.exe
Данные процессы можно ограничить для выполнения на определенных процессорах в одном узле NUMA.
В следующем примере приложение soft1 выполняется на двух низкоприоритетных процессорах узла, а приложение soft2 выполняется на двух следующих процессорах узла. Тут предполагается, что указанный узел имеет минимум четыре логических процессора. Также стоит обратить внимание на то, что номер узла можно изменить на другой действительный номер для компьютера без изменения маски сходства.
start /NODE 1 /AFFINITY 0x3 soft1.exe
start /NODE 1 /AFFINITY 0xc soft2.exe
Параметр /NODE для однопроцессорных систем всегда равен нулю, а параметр /AFFINITY определяют битовую маску выбора процессорных ядер:
- 0x1 – первое ядро.
- 0x2 – второе ядро.
- 0x4 – третье ядро.
- 0x8 – четвертое ядро.
- И так далее.
Практическое применение параметров /NODE и /AFFINITY заключается в возможности запуска приложений на конкретных ядрах CPU.
Параметры для мультипроцессорных систем /NODE и /AFFINITY не поддерживаются в операционной системе Windows Vista и более ранних версиях ОС Windows.
Формат командной строки start
START ["заголовок"] [/D путь] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL] [/NODE <узел NUMA>] [/AFFINITY <шестнадцатеричная маска сходства>] [/WAIT] [/B] [команда/программа] [параметры]
Параметры командной строки start
«заголовок» | Заголовок окна. Отображаемый в строке заголовка окна командной строки. |
/D путь | Исходный каталог. |
/I | Передает среду запуска Cmd.exe в новое окно командной строки. Если параметр /i не указан, используется текущая среда. |
/MIN | Запуск команды или программы в свернутом окне. |
/MAX | Запуск команды или программы в развернутом окне. |
/SEPARATE | Запуск 16-разрядной программы Windows в отдельной области памяти. |
/SHARED | Запуск 16-разрядной программы Windows в общей области памяти. |
/LOW | Запуск приложения с приоритетом IDLE. (Низкий) |
/NORMAL | Запуск приложения с приоритетом NORMAL. (Обычный) |
/HIGH | Запуск приложения с приоритетом HIGH. (Высокий) |
/REALTIME | Запуск приложения с приоритетом REALTIME. (Реального времени) |
/ABOVENORMAL | Запуск приложения с классом приоритета ABOVENORMAL. (Выше среднего) |
/BELOWNORMAL | Запуск приложения с классом приоритета BELOWNORMAL. (Ниже среднего) |
/NODE <узел NUMA> | Указывает предпочтительный узел NUMA в качестве десятичного целого числа. |
/AFFINITY <шестнадцатеричная маска сходства> | Указывает маску сходства процессора в виде шестнадцатеричного числа. Процесс будет выполняться только на этих процессорах. Маска сходства интерпретируется по-разному при совмещении параметров /AFFINITY и /NODE. Укажите маску сходства таким образом, как если бы маска процессора узла NUMA сдвинута вправо и начинается на нулевом бите. Выполнение этого процесса ограничено процессорами, общими для указанной маски сходства и узла NUMA. Если общих процессоров не существует, то выполнение процесса ограничено указанным узлом NUMA. |
/WAIT | Запуск приложения с ожиданием его завершения. |
/B | Запуск приложения без создания нового окна с отключением обработки сочетания клавиш CTRL+C. Если приложение не обрабатывает сочетание клавиш CTRL+C самостоятельно, единственным способом его прерывания является использование сочетания клавиш CTRL+BREAK. |
команда/программа | Если это внутренняя команда cmd.exe или пакетный файл, обработчик команд (cmd.exe) запускается с ключом /K. Это означает, что окно не будет закрыто после завершения команды. Если это не внутренняя команда cmd.exe и не пакетный файл, значит, это программа, которая будет запущена в оконном или консольном приложении. |
параметры | Параметры, передаваемые команде или программе. |
/? | Отображение справки в командной строке. |
Примеры использования start
start calc | Запустит программу calc из командной строки. |
start /max start /? | Отобразит раздел справки по командной строке в отдельном окне командной строки с развернутым окном. |
start «Новое окно CMD» | Выполнит запуск CMD в новом окне и в качестве заголовка будет отображаться текст «Новое окно CMD». |
start http://reg.ru | Выполнится запуск обозревателя Интернет и откроется сайт reg.ru. |
start /min notepad.exe | Выполнится запуск блокнота в свернутом окне. |
start services.msc | Выполнится запуск по расширению .msc диспетчер Служб. |
start «Backup» /min /belownormal backup.bat | Запустит файл backup.bat в свернутом окне с заданием заголовка «Backup» и с пониженным приоритетом. |
start /abovenormal /MAX winword.exe | Запустит редактора Microsoft Word в новом окне, развернутом на весь экран и с приоритетом Выше среднего. |
start /node 0 /affinity 0x2 notepad.exe | Запустит приложения Блокнот (notepad.exe) на втором ядре процессора. |