Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

Как запустить файл с параметром


Как запустить exe файл с параметрами. Как запустить программу с параметрами командной строки. Параметры командной строки с ExecParm

На этой странице вы найдете детальную инструкцию по запуску игры параметрами, ключами запуска. «Зачем это нужно?» - спросите вы. Чтобы ответить на этот вопрос необходимо рассказать что такое параметры, ключи запуска и на что они могут влиять. При запуске игры с указанием параметров вы активируете скрытые возможности, которые в большинстве случаев нельзя включить каким-либо другим путем. Следует также сказать, что каждая игра имеет свои индивидуальные ключи запуска, не зная о которых вы не сможете что-то активировать.

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

Создание ярлыка игры

Прежде чем создать ярлык игры, необходимо найти файл, который отвечает ее запуск. Все эти файлы имеют расширение exe , то есть значок запуска игры будет иметь следующий формат имени: название.exe Следует также сказать, что расширение exe может быть скрытым (не отображаться). Необходимый файл запуска находится в месте, которое вы указали во время установки - это может быть следующий путь:
C: \ Program Files \ название_игры \ название_название.exe

И так, необходимый файл вы нашли. Теперь создадим ярлык игры на рабочем столе. Создать ярлык можно несколькими методами - используйте какой-то один.

  1. Кликните правой клавишей мыши по значку. Найдите пункт Отправить - Рабочий стол (создать ярлык).
  2. Зажмите на клавиатуре комбинацию клавиш [Ctrl ] + [Shift
  3. Зажмите на клавиатуре клавишу [Alt ] и перетащите значок на рабочий стол.

Добавление параметров запуска к ярлыку игры

Ярлык создан и можно добавлять параметры запуска игры. Для этого кликните правой клавишей мыши по созданному ярлыку на Рабочем столе и выберите пункт Свойства . Перед вами появится окно в котором вам понадобиться отредактировать только одно поле с названием Объект .

Для того чтобы запустить игру с параметрами (ключами) их необходимо дописать в конце поля Объект через пробел. Сразу следует сказать, что параметров запуска может быть больше одного и все они записываются в следующем формате в конце поля Объект через пробел :

-параметр_1 -параметр_2 -параметр_3

Пример: "C:\Program Files (x86)\Skype\Phone\Skype.exe" /параметр

Примечания:

  • перед названием параметра в большинстве случаев должен стоять дефис (- ) или слеш (/ ) в зависимости от игры, но для многих игр эти знаки идентичны, то есть не имеет значения какой из них ставить;
  • между параметрами (ключами), если их несколько, обязательно должен стоять пробел;
  • двойные кавычки из поля Объект, если они присутствуют, удалять не надо;
  • если вы запускает

Как запустить программу с параметрами командной строки

Нередко для разнообразных программ приходится указывать специальные параметры командной строки, которые должны активироваться при ее запуске. К примеру, в программе QIP, чтобы не надоедала лишними сервисами, в параметрах необходимо указать ключ “/isolated”. Как это сделать?

Кстати данный ключ в QIP лично я использую всегда – он превращает программу в тот старый добрый QIP, каким он был когда-то, без толпы надоедливых сервисов и всякой дряни. Остается лишь сама “аська”.

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

Щелкните на значке программы в папке Program Files либо в списке Все программы правой кнопкой мыши и выберите команду Отправить > Рабочий стол (создать ярлык).

Ярлык появится на рабочем столе. Щелкните на нем правой кнопкой мыши и выберите команду Свойства. Откроется окно, в котором нас интересует поле Объект. Именно в нем, после кавычек, и следует дописать нужную нам команду. В данном случае – ключ “/isolated”.

Однако, сей способ кажется мне несколько трудоемким. Создать ярлык, потом прописывать параметры… не проще ли получить возможность сразу запустить любую программу, указав в контекстном меню нужные параметры командной строки? Другими словами, просто щелкнул правой кнопкой мыши на файле, указал нужные параметры и дело в шляпе.

Поможет нам в этом программа ExecParm.

Параметры командной строки с ExecParm

Для начала скачаем программу, для системы нужной разрядности.

Скачем обычный архив, распаковать который можно куда угодно. В нем будет всего три файла – ExecParm.txt, Execparm.dll и Execparm.inf.

А где же исполняемый файл, спросите вы, как установить-то? Очень просто. Достаточно щелкнуть на файле Execparm.inf правой кнопкой мыши и выбрать команду Установить.

В сущности, таким образом в системный реестр просто добавиться несколько записей. Теперь достаточно щелкнуть на исполняемом файле программы правой кнопкой мыши и выбрать команду Execute With Parameters (т.е. запустить с параметрами командной строки).

Осталось указать необходимые параметры и щелкнуть на кнопке ОК. Возможно, это способ понравится кому-то больше, чем первый, более традиционный, вариант.

Как запустить игру с параметром, ключом

На этой странице вы найдете детальную инструкцию по запуску игры параметрами, ключами запуска. «Зачем это нужно?» — спросите вы. Чтобы ответить на этот вопрос необходимо рассказать что такое параметры, ключи запуска и на что они могут влиять. При запуске игры с указанием параметров вы активируете скрытые возможности, которые в большинстве случаев нельзя включить каким-либо другим путем. Следует также сказать, что каждая игра имеет свои индивидуальные ключи запуска, не зная о которых вы не сможете что-то активировать.

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

Создание ярлыка игры

Прежде чем создать ярлык игры, необходимо найти файл, который отвечает ее запуск. Все эти файлы имеют расширение exe, то есть значок запуска игры будет иметь следующий формат имени: название.exe Следует также сказать, что расширение exe может быть скрытым (не отображаться). Необходимый файл запуска находится в месте, которое вы указали во время установки — это может быть следующий путь:
C: \ Program Files \ название_игры \ название_название.exe

И так, необходимый файл вы нашли. Теперь создадим ярлык игры на рабочем столе. Создать ярлык можно несколькими методами — используйте какой-то один.

  1. Кликните правой клавишей мыши по значку. Найдите пункт Отправить — Рабочий стол (создать ярлык).
  2. Зажмите на клавиатуре комбинацию клавиш [Ctrl] + [Shift] и перетащите значок на рабочий стол.
  3. Зажмите на клавиатуре клавишу [Alt] и перетащите значок на рабочий стол.

Добавление параметров запуска к ярлыку игры

Ярлык создан и можно добавлять параметры запуска игры. Для этого кликните правой клавишей мыши по созданному ярлыку на Рабочем столе и выберите пункт Свойства. Перед вами появится окно в котором вам понадобиться отредактировать только одно поле с названием Объект.

Для того чтобы запустить игру с параметрами (ключами) их необходимо дописать в конце поля Объект через пробел. Сразу следует сказать, что параметров запуска может быть больше одного и все они записываются в следующем формате в конце поля Объект через пробел:

-параметр_1 -параметр_2 -параметр_3

Пример: "C:\Program Files (x86)\Skype\Phone\Skype.exe" /параметр

Примечания:

  • перед названием параметра в большинстве случаев должен стоять дефис ( - ) или слеш ( / ) в зависимости от игры, но для многих игр эти знаки идентичны, то есть не имеет значения какой из них ставить;
  • между параметрами (ключами), если их несколько, обязательно должен стоять пробел;
  • двойные кавычки из поля Объект, если они присутствуют, удалять не надо;
  • если вы запускаете специальный загрузчик (Launcher) и только после этого запускаете игру, нажатием кнопки «Играть» или «Запустить», то дописывая параметры запуска к ярлыку файла Launcher.exe вы запустите не игру с дополнительными параметрами (ключами), а только программу для ее запуска — игра запуститься без параметров.

Как в Windows прописать параметры запуска в ярлыке

Мы каждый день пользуемся различными компьютерными программами для выполнения самых разнообразных задач. Некоторые из них имеют большое количество настроек и возможностей, и чтобы всеми ими воспользоваться, нужно совершать множество манипуляций. Например, вы регулярно используете несколько режимов работы приложения, вводите логин и пароль пользователя, применяете специальные режимы. Помимо офисных работников, в таких возможностях очень часто нуждаются любителей компьютерных игр. Все эти манипуляции могут занимать значительное количество усилий и времени, да и попросту раздражать.

Отражение условий старта приложения в ярлыке упрощает работу с программами.

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

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

Операционная система Windows предоставляет каждому пользователю возможность прописать в ярлыке программы параметры запуска. В рамках рассматриваемого вопроса вместо того чтобы переключаться между пунктами меню, можно один раз создать несколько ярлыков с нужными параметрами, расположить их на рабочем столе или панели задач, а в Windows 8 и 10 и на начальном экране, и запускать программу с нужными параметрами одним нажатием кнопки.

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

Как прописать параметры запуска программы в ярлыке

Этап 1. Выбор исполняемого файла и перенос ярлыка на рабочий стол

Несмотря на то что в подавляющем большинстве случаев при установке софта иконка для запуска помещается на рабочий стол, в некоторых случаях этого не происходит. Тогда вам нужно самостоятельно найти исполняемый файл. Каким образом?

  1. При установке приложения внимательно следите за тем, какую папку предлагает выбрать установщик. Обычно это C:\Program Files либо C:\Program Files (x86). Большинство разработчиков предоставляет возможность самостоятельно выбрать папку по умолчанию, но, если вы не изменяете предложенный вариант, программа будет установлена именно в указанную папку.
  2. Через проводник Windows зайдите в каталог, куда установлено программное обеспечение и найдите файл запуска. Он имеет расширение exe. Зачастую его название совпадает с названием самого софта. Если же вы не можете определиться, попробуйте выяснить эту информацию на официальном сайте разработчика в разделе справки или в службе технической поддержки.
  3. Кликните по названию файла правой кнопкой мыши и выберите функцию «Создать ярлык».
  4. Подтвердите запрос системы «Windows не может создать ярлык в данной папке. Поместить его на рабочий стол?».

Если же вы не помните, в какой папке установлен софт, поступить можно следующим образом:

  1. Перейти в меню Пуск, найти в списке ПО нужное вам (для ускорения процесса можно даже воспользоваться функцией поиска).
  2. Кликнуть по названию правой кнопки мыши и выбрать Отправить — Рабочий стол (создать ярлык).

Если же вы пользуетесь Windows 10, процедура будет несколько отличаться:

  1. Перейдите на стартовый экран нажатием кнопки Пуск.
  2. Отыщите в списке всех приложений или на начальном экране иконку запуска программы.
  3. Кликните правой кнопкой мыши, выберите Дополнительно — Перейти к расположению файла.
  4. После того как откроется окно Проводника Windows, скопируйте значок на рабочий стол через контекстное меню либо же просто перетянув его в нужное место.

Наконец – самый простой способ. Просто нажмите правую кнопку мыши на нужном файле и, не отпуская, перетащите на рабочий стол. Там отпустите кнопку и появится меню – выберите в нём «Создать ярлыки».

Этап 2. Указание параметров запуска

После того, как мы успешно перенесли значок на рабочий стол, займёмся указанием необходимых параметров в его свойствах. Для этого вам нужно:

  1. Правой кнопкой мыши кликнуть по иконке и выбрать «Свойства».
  2. В открывшемся меню перейдите во вкладку «Ярлык» и найдите строку «Объект». Вы увидите, что поле ввода в нём является активным. Именно сюда мы и будем прописывать нужные команды.
  3. После ввода нужных данных внизу окошка нажмите последовательно Применить — OK.

Параметры записываются в строке «Объект», в самом конце. Их может быть несколько и разделяются они пробелами. Перед каждым параметром ставится «-». Например, для игры Prototype дописывание в конце строки «-windowed» означает, что она сразу запустится в оконном режиме, а не в полноэкранном.

Какие команды прописывать

Разобравшись с тем, как прописывать команды запуска, давайте попробуем выяснить, что именно прописывать. К сожалению, универсальных команд, действующих для абсолютно всех программ, не существует. Поэтому, если вы хотите создавать ярлыки для быстрого запуска с указанными параметрами, вам придётся изучить справку программы либо же обратиться в службу технической поддержки разработчиков.

Очень часто такая информация указана на официальных форумах приложения или игры. Более опытные юзеры или представители разработчиков или правообладателей публикуют там детальную информацию.

Возвращаясь к тому, что было сказано ещё в начале настоящей статьи. Указание параметров получило свою наибольшую актуальность в период массового интереса к игре под названием «Counter-Strike». Почему данный интерес получил подобное распространение именно на «CS» вопрос неоднозначный, кто-то применял это исключительно для развлечения, кто-то (как, например, некоторые профессиональные игроки) для того, чтобы максимальным образом индивидуализировать игровой процесс.

Например, вот список параметров для игры «Counter-Strike: Global Offensive», которые некоторыми пользователями используются при запуске:

ПараметрЗначение
-novidОтключение вступительного ролика
-w 640 -h 480Установка расширения
-consoleАктивация консоли
-freq 120Установление лимита частоты обновления экрана
-highЗапуск с повышенным приоритетом
-condebugСохранение логов
-lowЗапуск с пониженным приоритетом
-noaafontsОтключение сглаживания
-nosyncДеактивация вертикальной синхронизации
-fullscreenЗапуск в полноэкранном режиме
-language EnglishУстановка языка

Заключение

Насколько приведённый порядок действий целесообразен и актуален сейчас решать каждому за себя, а в комментариях приглашаем вас подискутировать на эту тему, а также рассказать о том, какие программы вы запускаете с указанием параметров запуска. Эти данные могут кому-то пригодиться.

Создание bat файлов

Люди, которым знаком термин батник, знают, что BAT файлы могут существенно упростить жизнь и экономить время, если уметь их правильно писать и использовать. В этой статье я расскажу о том, как создавать BAT файлы и познакомлю вас с распространенными ошибками, которые обычно возникают при их написании.

Создать BAT файл очень просто. Достаточно открыть блокнот и сохранить пустой лист с расширением .bat, выбрав опцию Сохранить как... и написав в поле Имя файла что-нибудь оканчивающееся на .bat, например test.bat.
Тип файла указываете как на скриншоте ниже - Все файлы. Сохраняете и получаете BAT файл.

Редактировать BAT файл можно в блокноте или любом другом текстовом редакторе, ориентированным на работу с кодом.

Теперь перейдем непосредственно к практической информации. В сети многие ищут ответ на вопрос Как быть с пробелами в BAT файлах?. В путях к папкам и исполняемым файлам наличие пробела вызывает ошибку. Самый распространенный ответ: Заключи путь в кавычки. И этот ответ не верен. Правда некоторые будут с пеной у рта утверждать, что он работает. Итак, появилось два почему - почему не верен и почему некоторые будут.

На Windows (как, впрочем, и на UNIX) установленные в системе программы соответствующим образом регистрируются системой. Поэтому некоторые из установленных программ могут запускаться одной простой командой из BAT файла или из апплета Выполнить панели Пуск. Одной из таких программ является Firefox:

start firefox

Если после этой команды писать путь к исполняемому файлу, то происходит следующее: запускается обозреватель Firefox и пробует обработать запрос, то есть файл, путь к которому указан. То есть, если указать следующее:

start firefox C:\Program Files\Mozilla Firefox\firefox.exe

Обозреватель откроется, чтобы не было написано после start firefox. Именно поэтому некоторые товарищи будут уверять что все прекрасно работает. Однако, если взять портативную программу, то ситуация окажется совсем иная. Рассмотрим в качестве примера ftp-клиент Filezilla. Поскольку система не знает о программе, вышеупомянутая строчка

start filezilla

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

start D:\FileZilla\FileZilla.exe

Длинныe имена в bat-файлах

Теперь поговорим о путях и пробелах. Первый способ избежать этой проблемы - использование короткого имени.

start C:\Program Files\Sound Club\scw.exe

В примере два имени с пробелами. Заменим их короткими. Правила создания коротких имен следующие: в коротком имени используются первые шесть символов имени без учета пробелов, после имени указывают порядковый номер папки с помощью символа ~. Так как папки Program Files и Sound Club у меня в единственном числе, получится следующее:

Program Files - Progra~1
 Sound Club - SoundC~1
 start C:\Progra~1\SoundC~1\scw.exe

Если рядом будут присутствовать две папки, например Sound Club и Sound Clown, то следуя правилам, в примере выше надо будет указать SoundC~2, так как в этом случае Sound Club окажется вторым именем (имена считаются в алфавитном порядке).

Но этот способ неудобен тем, что приходится указывать порядковые номера. Ситуация с Program files более менее нормальная. Мало у кого встретится две подобные папки на системном диске. Но если вы решили установить несколько продуктов Mozilla на свой компьютер. У вас получится несколько папок, например:

Mozilla Firefox
 Mozilla Thunderbird
 Mozilla Sunbird

Короткими именами для них будут

Mozill~1
 Mozill~2
 Mozill~3

А теперь представьте, что вы написали BAT файл с упоминанием этих программ. Если удалить Firefox, оставшиеся записи перестанут работать, а если удалить Thunderbird, перестанет работать запись для Sunbird. Короче, способ с короткими именами - не наш способ.

Пробелы и кавычки в bat-файлах

Кавычки на самом деле работают, но не с теми способами, которые обычно советуют. Советуют обычно следующее:

start "C:\Program Files\Sound Club\scw.exe"

Так команда не сработает, поскольку если посмотреть справку по ней (start /?), то в справке вы увидите следующее:

START ["заголовок"] [/D путь] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
 [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
 [/NODE узел NUMA] [/AFFINITY маска сходства] [/WAIT] [/B]
 [команда/программа] [параметры]

Как видите, первым параметром идёт заголовок окна и он как раз в кавычках. Этот параметр необязательный, но его всё же советуют указывать (например, тут), чтобы избежать ошибок при выполнении команды. Внутри кавычек можно ничего не писать. Получится так:

start "" "C:\Program Files\Sound Club\scw.exe"

Также сработает и вариант с заключением в кавычки всех имён с пробелами по отдельности:

start C:\"Program Files"\"Sound Club"\scw.exe

Однако, в ряде случаев не работает ничего из вышеописанного. В таких случаях я могу посоветовать использовать команду cd. Переходим на системный раздел, затем с помощью cd в папку Program Files и запускаем программу (start):

%SystemDrive%
 cd \Program Files\Sound Club\
 start scw.exe

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

start firefox
 start jetaudio
 

В данном случае отключен запуск установленной в системе программы Defraggler.exe. Комментируют строки, указывая команду rem в начале строки. Все BAT файлы выполняются в окне консоли. Чтобы оно исчезало по окончании выполнения команд, не забывайте в конце писать команду на выход exit.

start firefox
 start jetaudio
 
 exit

Запуск приложений из bat-файла

В первой части статьи я в общих чертах рассказал о BAT файлах. Теперь стало понятно - что это такое и с чем его едят. Во второй части речь пойдет уже о более конкретных вещах. Например, о том, как при помощи BAT файла запустить несколько приложений с определенными настройками или в автоматическом режиме установить программу, чтобы не тратить время на ответы типа Вы согласны с условиями лицензионного соглашения? и не нажимать лишние кнопки.

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

start firefox

Это не всегда работает. Поэтому такой прием можно вполне применять на какой-то конкретной системе, но в качестве универсального решения он не подходит. Если есть цель заставить работать BAT файл везде и всегда, нужно пользоваться полными путями:

start C:\"Program Files"\"Mozilla Firefox"\firefox.exe

Также я отметил, что в BAT файле обязательно должна присутствовать команда на завершение:

start C:\"Program Files"\"Mozilla Firefox"\firefox.exe
 exit

Запуск программ в bat-файлах с параметрами (ключами)

Программу можно не просто запускать, а давать ей дополнительные команды при запуске. Например, скомандовать запускаться свернутой:

start /min D:\FileZilla\FileZilla.exe
 exit

Скомандовать в данном случае - значит указать ключ. Ключ указывается через слэш после основной команды (команда /ключ). Основной командой в данном случае является start. Правда ключ min работает только в половине случаев, потому как относится именно к команде запуска start, а не к программам, которые эта команда запускает.

Вообще ключей существует очень много и наборы ключей разных программ могут существенно различаться. Есть, правда, несколько общих. Например, ключ справки (/? или /help). Чтобы проследить работу этого ключа, рассмотрим практический пример. Откройте консоль (Жмёте      + R, вводите cmd, далее Enter) и набираете в консоли следующее:

start /?

Консоль выведет на экран перечень допустимых ключей c комментариями для команды start.

Обратите внимание на ключ /wait. В некоторых случаях он бывает просто незаменим. Например, вы решили с помощью BAT файла распаковать архив с программой и эту самую программу запустить. В батнике получится две команды - на распаковку и на запуск. Поскольку команды при запуске BAT файла выполнятся почти одновременно, архив распаковаться не успеет и запускать будет нечего. Поэтому будет ошибка. В этом случае на помощь придет ключ /wait:

Таким образом система сначала выполнит первое действие, дождется его завершения и только после этого приступит ко второму. Если необходимо подождать конкретный отрезок времени, то проще воспользоваться консольной утилитой Sleep. В нужном месте BAT файла пишете следующую команду (число - количество секунд):

start Sleep.exe 15

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

/S
 /s
 /q
 /silent
 и ряд других

В ряде случаев бывает очень удобно. Антивирус Avast имеет опцию тихой установки в корпоративной версии. В бесплатной (домашней) версии тихой установки якобы нет. Однако, если вы в курсе как работает инсталятор InstallShield, вы поймете, что это утка, так как этот инсталятор сам по себе поддерживает ключ тихой установки /S. А значит все продукты, выполненные на его базе - тоже. И Avast не исключение. Просто создаете в папке с Avast'ом BAT файл с содержанием

start avast.exe /S
 exit

запускаете его и программа устанавливается на компьютер практически без вашего участия. Таким образом можно написать целый список программ для тихой установки и сэкономить время, например, на переустановке системы. В статье про тихую установку можно получить более подробную информацию по ключам.

Есть и другие возможности по управлению программами при помощи BAT файлов. Можно запустить программу, приказав ей открыть файл при запуске. Я пользуюсь этим способом при разработке сайтов. Очень удобно, когда весь твой инструментарий открывает нужные документы и папки нажатием всего одной кнопки:


 start /min D:\FileZilla\FileZilla.exe "ftp://логин:пароль@сервер"
 
 
 start C:\"program files"\"mozilla firefox"\firefox.exe "http://localhost/папка_сайта/index.php"
 
 
 start /min C:\"Program Files"\текстовой_редактор.exe "E:\сервер\папка_сайта\index.html"
 
 
 start /min E:\сервер\папка_с_сайтом
 
 
 exit

Отмечу, что все вышеописанные приемы можно применять в различных комбинациях и сочетаниях.

start /min /wait program.exe /m /S
 start C:\Directory\program2.exe "C:\Files\file.odt"
 exit

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

start C:\"program files"\"mozilla firefox"\firefox.exe "http://localhost/папка_сайта/index.php"

В качестве эпилога предложу для ознакомления конвертер BAT файлов в приложения формата .exe - Bat_To_Exe_Converter. BAT файл - это не всегда эстетично, а с помощью конвертера можно запаковать батник в exe'шник, оформив его любой иконкой на ваш выбор.

Наткнулся ещё на один конвертер BAT в EXE, можете рассмотреть в качестве альтернативы предыдущей программе: Advanced Bat To Exe Converter

На этом всё.

Если материалы сайта оказались для вас полезными, можете поддержать дальнейшее развитие ресурса, оказав ему (и мне ) моральную и материальную поддержку.

параметры и ключи командной строки / Блог компании RUVDS.com / Хабр

Bash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
Bash-скрипты, часть 7: sed и обработка текстов
Bash-скрипты, часть 8: язык обработки данных awk
Bash-скрипты, часть 9: регулярные выражения
Bash-скрипты, часть 10: практические примеры
Bash-скрипты, часть 11: expect и автоматизация интерактивных утилит

Освоив предыдущие части этой серии материалов, вы узнали о том, что такое bash-скрипты, как их писать, как управлять потоком выполнения программы, как работать с файлами. Сегодня мы поговорим о том, как добавить скриптам интерактивности, оснастив их возможностями по получению данных от пользователя и по обработке этих данных.



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

$ ./myscript 10 20

В данном примере сценарию передано два параметра — «10» и «20». Всё это хорошо, но как прочесть данные в скрипте?

Чтение параметров командной строки


Оболочка bash назначает специальным переменным, называемым позиционными параметрами, введённые при вызове скрипта параметры командной строки:
  • $0 — имя скрипта.
  • $1 — первый параметр.
  • $2 — второй параметр — и так далее, вплоть до переменной $9, в которую попадает девятый параметр.

Вот как можно использовать параметры командной строки в скрипте с помощью этих переменных:
#!/bin/bash echo $0 echo $1 echo $2 echo $3

Запустим сценарий с параметрами:
./myscript 5 10 15

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

Обратите внимание на то, что параметры командной строки разделяются пробелами.

Взглянем на ещё один пример использования параметров. Тут мы найдём сумму чисел, переданных сценарию:

#!/bin/bash total=$[ $1 + $2 ] echo The first parameter is $1. echo The second parameter is $2. echo The sum is $total.

Запустим скрипт и проверим результат вычислений.
Сценарий, который находит сумму переданных ему чисел

Параметры командной строки не обязательно должны быть числами. Сценариям можно передавать и строки. Например, вот скрипт, работающий со строкой:

#!/bin/bash echo Hello $1, how do you do

Запустим его:
./myscript Adam

Он выведет то, что мы от него ожидаем.
Сценарий, работающий со строковым параметром

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

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

${10}

Проверка параметров


Если скрипт вызван без параметров, но для нормальной работы кода предполагается их наличие, возникнет ошибка. Поэтому рекомендуется всегда проверять наличие параметров, переданных сценарию при вызове. Например, это можно организовать так:
#!/bin/bash if [ -n "$1" ] then echo Hello $1. else echo "No parameters found. " fi

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

Подсчёт параметров


В скрипте можно подсчитать количество переданных ему параметров. Оболочка bash предоставляет для этого специальную переменную. А именно, переменная $# содержит количество параметров, переданных сценарию при вызове.

Опробуем её:

#!/bin/bash echo There were $# parameters passed.

Вызовем сценарий.
./myscript 1 2 3 4 5

В результате скрипт сообщит о том, что ему передано 5 параметров.
Подсчёт количества параметров в скрипте

Эта переменная даёт необычный способ получения последнего из переданных скрипту параметров, не требующий знания их количества. Вот как это выглядит:

#!/bin/bash echo The last parameter was ${!#}

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

Захват всех параметров командной строки


В некоторых случаях нужно захватить все параметры, переданные скрипту. Для этого можно воспользоваться переменными $* и $@. Обе они содержат все параметры командной строки, что делает возможным доступ к тому, что передано сценарию, без использования позиционных параметров.

Переменная $* содержит все параметры, введённые в командной строке, в виде единого «слова».

В переменной $@ параметры разбиты на отдельные «слова». Эти параметры можно перебирать в циклах.

Рассмотрим разницу между этими переменными на примерах. Сначала взглянем на их содержимое:

#!/bin/bash echo "Using the \$* method: $*" echo "-----------" echo "Using the \$@ method: $@"

Вот вывод скрипта.
Переменные $* и $@

Как видно, при выводе обеих переменных получается одно и то же. Теперь попробуем пройтись по содержимому этих переменных в циклах для того, чтобы увидеть разницу между ними:

#!/bin/bash count=1 for param in "$*" do echo "\$* Parameter #$count = $param" count=$(( $count + 1 )) done count=1 for param in "$@" do echo "\$@ Parameter #$count = $param" count=$(( $count + 1 )) done

Взгляните на то, что скрипт вывел в консоль. Разница между переменными вполне очевидна.
Разбор переменных $* и $@ в цикле

Переменная $* содержит все переданные скрипту параметры как единый фрагмент данных, в то время как в переменной $@ они представлены самостоятельными значениями. Какой именно переменной воспользоваться — зависит от того, что именно нужно в конкретном сценарии.

Команда shift


Использовать команду shift в bash-скриптах следует с осторожностью, так как она, в прямом смысле слова, сдвигает значения позиционных параметров.

Когда вы используете эту команду, она, по умолчанию, сдвигает значения позиционных параметров влево. Например, значение переменной $3 становится значением переменной $2, значение $2 переходит в $1, а то, что было до этого в $1, теряется. Обратите внимание на то, что при этом значение переменной $0, содержащей имя скрипта, не меняется.

Воспользовавшись командой shift, рассмотрим ещё один способ перебора переданных скрипту параметров:

#!/bin/bash count=1 while [ -n "$1" ] do echo "Parameter #$count = $1" count=$(( $count + 1 )) shift done

Скрипт задействует цикл while, проверяя длину значения первого параметра. Когда длина станет равна нулю, происходит выход из цикла. После проверки первого параметра и вывода его на экран, вызывается команда shift, которая сдвигает значения параметров на одну позицию.
Использование команды shift для перебора параметров

Используя команду shift, помните о том, что при каждом её вызове значение переменной $1 безвозвратно теряется.

Ключи командной строки


Ключи командной строки обычно выглядят как буквы, перед которыми ставится тире. Они служат для управления сценариями. Рассмотрим такой пример:
#!/bin/bash echo while [ -n "$1" ] do case "$1" in -a) echo "Found the -a option" ;; -b) echo "Found the -b option" ;; -c) echo "Found the -c option" ;; *) echo "$1 is not an option" ;; esac shift done

Запустим скрипт:
$ ./myscript –a –b –c –d

И проанализируем то, что он выведет в терминал.
Обработка ключей в скрипте

В этом коде использована конструкция case, которая сверяет переданный ей ключ со списком обрабатываемых скриптом ключей. Если переданное значение нашлось в этом списке, выполняется соответствующая ветвь кода. Если при вызове скрипта будет использован любой ключ, обработка которого не предусмотрена, будет исполнена ветвь «*».

Как различать ключи и параметры


Часто при написании bash-скриптов возникает ситуация, когда надо использовать и параметры командной строки, и ключи. Стандартный способ это сделать заключается в применении специальной последовательности символов, которая сообщает скрипту о том, когда заканчиваются ключи и начинаются обычные параметры.

Эта последовательность — двойное тире (--). Оболочка использует её для указания позиции, на которой заканчивается список ключей. После того, как скрипт обнаружит признак окончания ключей, то, что осталось, можно, не опасаясь ошибок, обрабатывать как параметры, а не как ключи. Рассмотрим пример:

#!/bin/bash while [ -n "$1" ] do case "$1" in -a) echo "Found the -a option" ;; -b) echo "Found the -b option";; -c) echo "Found the -c option" ;; --) shift break ;; *) echo "$1 is not an option";; esac shift done count=1 for param in $@ do echo "Parameter #$count: $param" count=$(( $count + 1 )) done

Этот сценарий использует команду break для прерывания цикла while при обнаружении в строке двойного тире.

Вот что получится после его вызова.


Обработка ключей и параметров командной строки

Как видно, когда скрипт, разбирая переданные ему данные, находит двойное тире, он завершает обработку ключей и считает всё, что ещё не обработано, параметрами.

Обработка ключей со значениями


По мере усложнения ваших скриптов, вы столкнётесь с ситуациями, когда обычных ключей уже недостаточно, а значит, нужно будет использовать ключи с некими значениями. Например, вызов сценария в котором используется подобная возможность, выглядит так:
./myscript -a test1 -b -c test2

Скрипт должен уметь определять, когда вместе с ключами командной строки используются дополнительные параметры:
#!/bin/bash while [ -n "$1" ] do case "$1" in -a) echo "Found the -a option";; -b) param="$2" echo "Found the -b option, with parameter value $param" shift ;; -c) echo "Found the -c option";; --) shift break ;; *) echo "$1 is not an option";; esac shift done count=1 for param in "$@" do echo "Parameter #$count: $param" count=$(( $count + 1 )) done

Вызовем этот скрипт в таком виде:
./myscript -a -b test1 -d

Посмотрим на результаты его работы.
Обработка параметров ключей

В данном примере в конструкции case обрабатываются три ключа. Ключ -b требует наличия дополнительного параметра. Так как обрабатываемый ключ находится в переменной $1, соответствующий ему параметр будет находиться в $2 (тут используется команда shift, поэтому, по мере обработки, всё, что передано сценарию, сдвигается влево). Когда с этим мы разобрались, осталось лишь извлечь значение переменной $2 и у нас будет параметр нужного ключа. Конечно, тут понадобится ещё одна команда shift для того, чтобы следующий ключ попал в $1.

Использование стандартных ключей


При написании bash-скриптов вы можете выбирать любые буквы для ключей командной строки и произвольно задавать реакцию скрипта на эти ключи. Однако, в мире Linux значения некоторых ключей стали чем-то вроде стандарта, которого полезно придерживаться. Вот список этих ключей:
-a Вывести все объекты.
-c Произвести подсчёт.
-d Указать директорию.
-e Развернуть объект.
-f Указать файл, из которого нужно прочитать данные.
-h Вывести справку по команде.
-i Игнорировать регистр символов.
-l Выполнить полноформатный вывод данных.
-n Использовать неинтерактивный (пакетный) режим.
-o Позволяет указать файл, в который нужно перенаправить вывод.
-q Выполнить скрипт в quiet-режиме.
-r Обрабатывать папки и файлы рекурсивно.
-s Выполнить скрипт в silent-режиме.
-v Выполнить многословный вывод.
-x Исключить объект.
-y Ответить «yes» на все вопросы.

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

Получение данных от пользователя


Ключи и параметры командной строки — это отличный способ получить данные от того, кто пользуется скриптом, однако в некоторых случаях нужно больше интерактивности.

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

Эта команда позволяет принимать введённые данные либо со стандартного ввода (с клавиатуры), либо используя другие дескрипторы файлов. После получения данных, эта команда помещает их в переменную:

#!/bin/bash echo -n "Enter your name: " read name echo "Hello $name, welcome to my program."

Обратите внимание на то, что команда echo, которая выводит приглашение, вызывается с ключом -n. Это приводит к тому, что в конце приглашения не выводится знак перевода строки, что позволяет пользователю скрипта вводить данные там же, где расположено приглашение, а не на следующей строке.
Обработка пользовательского ввода

При вызове read можно указывать и несколько переменных:

#!/bin/bash read -p "Enter your name: " first last echo "Your data for $last, $first…"

Вот что выведет скрипт после запуска.
Несколько переменных в команде read

Если, вызвав read, не указывать переменную, данные, введённые пользователем, будут помещены в специальную переменную среды REPLY:

#!/bin/bash read -p "Enter your name: " echo Hello $REPLY, welcome to my program.


Использование переменной среды REPLY

Если скрипт должен продолжать выполнение независимо от того, введёт пользователь какие-то данные или нет, вызывая команду read можно воспользоваться ключом -t. А именно, параметр ключа задаёт время ожидания ввода в секундах:

#!/bin/bash if read -t 5 -p "Enter your name: " name then echo "Hello $name, welcome to my script" else echo "Sorry, too slow! " fi

Если данные не будут введены в течение 5 секунд, скрипт выполнит ветвь условного оператора else, выведя извинения.
Ограничение времени на ввод данных

Ввод паролей


Иногда то, что вводит пользователь в ответ на вопрос скрипта, лучше на экране не показывать. Например, так обычно делают, запрашивая пароли. Ключ -s команды read предотвращает отображение на экране данных, вводимых с клавиатуры. На самом деле, данные выводятся, но команда read делает цвет текста таким же, как цвет фона.
#!/bin/bash read -s -p "Enter your password: " pass echo "Is your password really $pass? "

Вот как отработает этот скрипт.
Ввод конфиденциальных данных

Чтение данных из файла


Команда read может, при каждом вызове, читать одну строку текста из файла. Когда в файле больше не останется непрочитанных строк, она просто остановится. Если нужно получить в скрипте всё содержимое файла, можно, с помощью конвейера, передать результаты вызова команды cat для файла, конструкции while, которая содержит команду read (конечно, использование команды cat выглядит примитивно, но наша цель — показать всё максимально просто, ориентируясь на новичков; опытные пользователи, уверены, это поймут).

Напишем скрипт, в котором используется только что описанный подход к чтению файлов.

#!/bin/bash count=1 cat myfile | while read line do echo "Line $count: $line" count=$(( $count + 1 )) done echo "Finished"

Посмотрим на него в деле.
Чтение данных из файла

Тут мы передали в цикл while содержимое файла и перебрали все строки этого файла, выводя номер и содержимое каждой из них.

Итоги


Сегодня мы разобрали работу с ключами и параметрами командной строки. Без этих средств диапазон использования скриптов оказывается чрезвычайно узким. Даже если скрипт написан, что называется, «для себя». Тут же мы рассмотрели подходы к получению данных от пользователя во время выполнения программы — это делает сценарии интерактивными.

В следующий раз поговорим об операциях ввода и вывода.

Уважаемые читатели! Спасибо вам за то, что делитесь опытом в комментариях к предыдущим частям этого цикла материалов. Если вам есть что сказать об обработке всего того, что можно передать в скрипт при запуске или во время его работы, уверены, многим будет интересно об этом почитать.

cmd - Создать командный файл для запуска .exe с дополнительным параметром

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
.

c # - Запуск EXE с параметрами

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
  5. Реклама Обратитесь к разработчикам и технологам со всего мира
  6. О компании
.Командная строка

- Запуск исполняемого файла из сценария Powershell с параметрами

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

.net - Запустить исполняемый файл с параметрами с помощью «Шелл»

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант
.

Как запустить файл .bat с параметром в установщике NSIS

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант
.

запустить exe с параметрами в PowerShell

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Смотрите также