Как узнать, с какими аргументами командной строки запущена программа в Windows 10
Урок №110. Аргументы командной строки
На этом уроке мы рассмотрим, что такое аргументы командной строки в языке C++ и то, как они используются.
Аргументы командной строки
Из урока №3 мы уже знаем, что при компиляции и линкинге, компилятор создает исполняемый файл. Когда программа запускается, выполнение начинается с первой строки функции main(). До этого урока мы объявляли main() следующим образом:
Обратите внимание, в этой версии функции main() никаких параметров нет. Тем не менее, многие программы нуждаются в некоторых входных данных. Например, предположим, что вы пишете программу под названием Picture, которая принимает изображение в качестве входных данных, а затем делает из этого изображения миниатюру (уменьшенная версия изображения). Как функция picture() узнает, какое изображение нужно принять и обработать? Пользователь должен сообщить программе, какой файл следует открыть. Это можно сделать следующим образом:
Тем не менее, здесь есть потенциальная проблема. Каждый раз при запуске программа будет ожидать пользовательский ввод. Это не проблема, если вы вручную запускаете программу из командной строки один раз для одного изображения. Но это уже проблема, если вы хотите работать с большим количеством файлов или чтобы другая программа имела возможность запустить эту программу.
Рассмотрим это детально. Например, вы хотите создать миниатюры для всех файлов-изображений, которые находятся в определенном каталоге. Как это сделать? Вы можете запускать эту программу столько раз, сколько есть изображений в каталоге, введя каждое имя файла вручную. Однако, если есть сотни изображений, такой подход будет, мягко говоря, не очень эффективным! Решением здесь будет написать программу, которая перебирала бы каждое имя файла в каталоге, вызывая каждый раз функцию picture() для каждого файла.
Теперь рассмотрим случай, когда у вас есть веб-сайт, и вы хотите, чтобы он создавал миниатюру каждый раз, когда пользователь загружает изображение на сайт. Эта программа не может принимать входные данные из Интернета и следует логический вопрос: «Как тогда вводить имя файла?». Выходом является вызов веб-сервером функции picture() автоматически каждый раз после загрузки файла.
В обоих случаях нам нужно, чтобы внешняя программа передавала имя файла в качестве входных данных в нашу программу при её запуске, вместо того, чтобы функция picture() сама дожидалась, пока пользователь вручную введет имя файла.
Аргументы командной строки — это необязательные строковые аргументы, передаваемые операционной системой в программу при её запуске. Программа может их использовать в качестве входных данных, либо игнорировать. Подобно тому, как параметры одной функции предоставляют данные для параметров другой функции, так и аргументы командной строки предоставляют возможность людям или программам предоставлять входные данные для программы.
Передача аргументов командной строки
Исполняемые программы могут запускаться в командной строке через вызов. Например, для запуска исполняемого файла MyProgram , который находится в корневом каталоге диска C в Windows, вам нужно ввести:
Чтобы передать аргументы командной строки в MyProgram , вам нужно будет их просто перечислить после имени исполняемого файла:
Теперь, при запуске MyProgram , SomeContent.txt будет предоставлен в качестве аргумента командной строки. Программа может иметь несколько аргументов командной строки, разделенных пробелами:
C:>MyProgram SomeContent.txt SomeOtherContent.txt
Это также работает и с Linux (хотя структура каталогов будет отличаться от структуры каталогов в Windows).
Если вы запускаете свою программу из среды IDE, то ваша IDE должна предоставить способ ввода аргументов командной строки.
Для пользователей Visual Studio: Щелкните правой кнопкой мыши по нужному проекту в меню «Обозреватель решений» > «Свойства» :
Затем выберите «Свойства конфигурации» > «Отладка» . На правой панели будет строка «Аргументы команды» . Вы сможете здесь ввести аргументы командной строки, и они будут автоматически переданы вашей программе при её запуске:
Пользователям Code::Blocks: Выберите «Project» > «Set program`s arguments. » :
Использование аргументов командной строки
Теперь, когда вы знаете, как передавать аргументы командной строки в программу, следующим шагом будет доступ к ним из программы. Для этого используется уже другая форма функции main(), которая принимает два аргумента ( argc и argv ) следующим образом:
Запуск программ в командной строке с аргументом
Сегодня расскажу, как запустить программу в командной строке Windows , да ещё и с аргументом.
Дело в том, что буквально только вчера описал одну замечательную и удобную бесплатную софтину (полезный дополнительный пункт контекстного меню), как уже сегодня мне в комментариях к этому обзору прислали вполне логичный вопрос — как удалить эту программу, если что?
Предисловие
Наивно предположил, что она удаляется обычным способом, как все приличные и воспитанные компьютерные программы (не описал данный момент в статье).
Оказалось (вычитал на официальном сайте автора утилиты), что для удаления надо всего-лишь запустить её в командной строке Windows, от имени администратора, да ещё и с определённым аргументом.
Главное, что написано это было таким «обыденным тоном», как будто простой смертный пользователь компьютера всю эту процедуру должен по-любому уметь делать с самого своего рождения.
Понятия не имел, как это делается — узнал, научился и делюсь этой информацией (решил отдельную статью написать, ведь это знание может пригодиться не только для удаления одной определённой программы).
Как открыть командную строку в Windows
На этом этапе статьи у меня возникла небольшая курьёзная заминка — не мог определиться, как правильнее будет звучать подзаголовок. Сперва хотел прописать — «как вызвать командную строку…», но решил, что обычно вызывают духов или джинов.
Потом пришло на ум — «как запустить командную строку…», но снова появились сомнения, ведь запускают, как правило, ракеты в космос. В итоге, написал, как написал, хоть и вспомнились при этом консервы и банки с огурцами.
Это была поднимающая настроение пауза, а теперь снова делаем серьёзные, даже суровые лица и идём искать командную строку в Windows.
Читайте также на сайте:
Найти её в системных дебрях совсем не трудно. Можно воспользоваться при этом несколькими методами…
- Тыкаем на клавиатуре сочетание клавиш Win+R , вводим команду «cmd» (без кавычек) и неистово жмём на «Ок»
- Находим в Проводнике папку C:WindowsSystem32 и запускаем «cmd.exe»…
Кстати, в этом случае уже можно кликнуть правой кнопкой мыши по файлу и выбрать в контекстном меню «Запуск от имени администратора», если это условие требует какая-либо инструкция…
- Ещё можно через меню кнопки «Пуск» перейти в «Служебные — Windows»…
В этом случае также можно запустить командную строку Windows от имени Администратора (через контекстное меню, кликнув правой кнопкой мыши по исполнительному файлу)…
Запускаем в командной строке Windows любую программу
Всё очень просто — нужно всего-лишь знать правильный путь к исполнительному файлу запускаемой программы. Его можно легко получить, например, с помощью бесплатной программы Path Copy Copy.
Далее просто прописываем ручками этот путь в командную строку Windows (если программист или хакер и этот способ самый простой и привычный (тогда не ясно, зачем вообще читаете эту статью)).
Простым пользователям советую заранее приготовить свой путь к исполнительному файлу программы в текстовом файлике и скопипастить (скопировать и вставить) его в командное окно, нажав «Enter» на клавиатуре после этого…
Большой нюанс! Если в пути к запускаемому файлу есть пробелы, то его (путь) нужно брать в кавычки…
Теперь возвращаюсь к виновнику написания данной инструкции. Чтоб удалить, например, программу Paste Into File нужно запустить её исполнительный файл с аргументом (условием) /unreg…
Как видите, можно добавлять «start» перед адресом к запускаемой программе, но и без этого слова всё чудно запустится. Вот и стали повелителями командной строки Windows.
Осталось извиниться за разноцветные «шапки» окон на скриншотах в статье — никак не могу определиться с красивой темой Windows, да и пассивные окна на заднем плане у меня выделяются жёлтым цветом (уже и не помню, где это выставил).
Теперь знаете, как запустить программу в командной строке Windows с аргументом. До новых полезных компьютерных программ и интересных приложений для Андроид.
ПОЛЕЗНОЕ ВИДЕО
Читайте также на сайте:
Уверенный пользователь трех домашних ПК с многолетним опытом, «компьютерщик» для всех родственников, соседей и знакомых, в течении 11-ти лет автор более тысячи обзоров интересных и полезных программ для компьютера на собственном софтовом блоге OptimaKomp.RU
Как просмотреть аргументы командной строки для запущенного приложения в Windows 10
Возможно, вы слышали о небольших хитростях, которые работают с Chrome; вы можете добавить к ярлыку Chrome небольшой «переключатель» и изменить его поведение. Мы рассмотрели тот, который позволяет запускать Chrome в определенном профиле, и он довольно полезен. Chrome — не единственное приложение, которое поддерживает эти маленькие «переключатели», многие приложения поддерживают, и эти переключатели на самом деле являются аргументами командной строки, которые поддерживают приложения. Эти аргументы — отличный способ изменить поведение приложения. Если у вас есть приложение, работающее на вашем рабочем столе, и вы хотите знать, работает ли оно нормально или с любым из этих переключателей, это довольно легко узнать.
Аргументы командной строки — Диспетчер задач
Это самый простой способ просмотра аргументов командной строки для запущенного приложения в Windows 10. Откройте диспетчер задач. Щелкните правой кнопкой мыши заголовок любого из столбцов и выберите в меню «Командная строка». Это добавит новый столбец «Командная строка». Найдите свое приложение в списке «Процессы» и проверьте, что для него отображается в столбце «Командная строка». Он покажет вам все аргументы командной строки, которые использовались при запуске приложения.
Аргументы командной строки — Командная строка
Если описанный выше метод не работает для определенного приложения, вы можете использовать простую команду командной строки, чтобы найти все переключатели, с которыми работает приложение, но прежде чем вы сможете использовать команду, вам понадобится небольшая информация о приложении.
Откройте диспетчер задач. Найдите приложение на вкладке «Процессы» и щелкните его правой кнопкой мыши. В контекстном меню выберите «Перейти к деталям». Это переключит вас на вкладку «Подробности» в диспетчере задач с выделенным приложением. Запишите значение в столбце PID.
Откройте командную строку и выполните следующую команду. Замените четыре нуля значением PID для приложения. Значение может быть намного больше четырех цифр, не беспокойтесь о совпадении длины. Четыре нуля здесь просто фиктивные значения.
Командование
Пример
Команда вернет все переключатели для этого конкретного процесса. Помните, что некоторые приложения могут запускать несколько экземпляров, и каждый экземпляр будет иметь свой собственный PID. Вам решать, найти правильный PID и использовать его для команды. Если вы не будете осторожны, вы можете получить аргументы командной строки, которые использует другой экземпляр.
Команды командной строки Windows CMD
Командная строка Windows — очень удобный инструмент, если уметь им правильно пользоваться. Преимущество командной строки в том, что можно выполнять огромное множество задач быстро и эффективно, причем некоторые из них недоступны в графической среде. Но ради этого придется пожертвовать интуитивной понятностью графического интерфейса и запомнить огромное количество команд командной строки.
У тех кто не работал с командной строкой в первую очередь возникает вопрос: Как открыть командную строку Windows?
Запуск командной строки Windows.
Программа консоли Windows, как и многие другие системные программы, находится в директории c:Windowssystem32 и называется cmd.exe. Так как консоль Windows является системной программой, то открыть командную строку в любой версии Windows, включая Windows10, можно через инструмент «Выполнить», введя название программы cmd.
Нажимаем сочетание клавиш Win+R или через меню Пуск > пр. клав. мыши > Выполнить (актуально для Windows 10), вводим название программы консоли — cmd, жмем ОК или клавишу Enter.
Альтернативный способ — открыть командную строку в Windows 10 через поиск. Для этого дастаточно в строке поиска на панели задач начать вводить слово «cmd» или «командная».
В результате поиска будет предложено несколько действий, одно из которых позволяет запустить Командную строку Windows 10 от имени администратора
В открывшейся консоли CMD мы увидим стандартное приветствие командной строки Windows. Текущей директорией является папка пользователя. Если консоль открыта от имени Администратора, то текущей директорией будет c:windowssystem32.
Команды командной строки.
Каждая команда командной строки представляет собой консольную программу. Помимо простых программ, позволяющих просматривать информацию о системе или выполнять операции с файлами и папками, есть довольно мощные утилиты для управления настройками операционной системы.
В командной строке Windows есть справочная информация по каждой программе, в которой описан синтаксис использования программы, праметры и аргументы, с которыми она работает.
Посмотреть справку по использованию команды можно используя следующий синтаксис.
Например справка по команде COPY будет выглядеть так.
Список всех доступных команд можно посмотреть используя команду HELP.
Для быстроты использования, команды создававлись в виде аббревиатуры или сокращения слов. Чтобы хорошо запоминать такие команды нужно понимать что означает ее сокращенная запись. В скобках приведены пояснения сокращений.
Операции с файлами и папками.
ATTRIB (attribute) — отображение и изменение атрибутов файлов
CD (change directory) — перейти в другую папку
COPY — копирование файлов в другое место
DEL (delete) или ERACE — удаление файлов
DIR (directory) — вывести список папок и файлов директории
EDIT — запуск редактора файлов (исключен в Windows 10)
EDLIN — построчный текстовый редактор (исключен в Windows 10)
EXPAND — распаковка сжатых файлов
FC (file comparation) — сравнить файлы и вывести различия между ними
FIND — найти в файле текстовую строку
MD или MAKEDIR (make directory) — создать папку
MOVE — переместить файлы из одной папки в другую
PRINT — вывести содержимое текстового файла на печать
RD или RMDIR (remove directory) — удалить папку
REN или RENAME — переименовать файл или папку
REPLACE — заменить файлы одного каталога файлами с аналогичным названием из другого каталога (заместить)
ROBOCOPY — запустить улучшенное средство копирования файлов и каталогов
TREE — показать структуру каталогов диска или папки
TYPE — вывести содержимое текстовых файлов на экран
XCOPY — копировать файлы и деревья каталогов
Работа с дисками.
CHKDISK (check disk) — проверить диск и вывести статистику
CHKNTFS (check ntfs) — отобразить или изменить выполнение проверки диска при загрузке
COMPACT — отобразить и изменить сжатие файлов в разделах NTFS
CONVERT — преобразовать дисковый том FAT в NTFS
DISKPART (disk partition) — отобразить и настроить свойства раздела диска
FORMAT — форматировать диск
FSUTIL (file system utility) — отобразить и настроить свойства файловой системы
LABEL — создать, изменить или удалить метку тома диска
RECOVER — восстановить данные с плохого или поврежденного диска
VOL (volume) — вывести метку и серийный номер тома для диска
Управление приложениями и процессами.
SCHTASKS (schedule tasks) — выполнить команду или запустить приложение по расписанию (планировщик задач)
SHUTDOWN — выключить или перезагрузить компьютер
TASKLIST — список выполняемых задач
TASKKILL — прекратить или остановить задачу (для остановки используется PID, который можно узнать при помощи TASKLIST)
RUNAS — запуск задачи от имени другого пользователя
SC (service configuration) — отображает или настраивает службы (фоновые процессы)
Информация о системе.
DATE — вывести или установить текущую дату
TIME — вывести и установить системное время
DRIVERQUERY — отобразить текущее состояние и свойства драйвера устройства
HOSTNAME — имя компьютера
SYSTEMINFO (system iformation) — информация о конфигурации компьютера
VER (version) — сведения о версии Windows
Просмотр и настройка сетевых параметров.
IPCONFIG — просмотр сведений о сетевых интерфейсах
PING — проверка сетевого соединения
TRACERT — определяет путь прохождения пакетов по сети
NSLOOKUP (name server lookup) — определяет ip-адрес по имени ресурса
ROUTE — работа с таблицами сетевых маршрутов
ARP — таблица преобразований ip-адресов в физические
NETSH (network shell)- программа управления сетевыми настройками
GETMAC — показывает MAC-адрес сетевого адаптера
Настройка и управление командной строкой.
CLS (clear screen) — очистить экран
CMD — запустить еще одну командную строку
COLOR — установить цвет текста и фона
PROMPT — изменить приглашение в командной строке
TITLE — назначить заголовок окна для текущего сеанса
EXIT — выход из командной строки