Предположим, что я (или любой работающий процесс) хотел запустить оболочку в Windows (7) и выполнить команду, есть несколько доступных опций. Например, можно:
- Откройте меню «Пуск», введите
cmd
и нажмите Enter ; - Запустите командную строку через ярлык;
- Откройте командную строку в стороннем инструменте (например, Launchy) или;
- Выполните некоторые команды в средстве запуска Windows (Win+R), которое запускает приглашение, выполняет команду и затем возвращает
Все вышеперечисленные методы (по умолчанию) запускают cmd.exe
(обычно находится в каталоге Windows\System32
).
Недавно я начал отдавать предпочтение альтернативным оболочкам командной строки, таким как собственный PowerShell от Microsoft. Однако больше всего меня расстраивает использование этих инструментов, так как мне кажется, что я вынужден изо всех сил запускать команды через них по умолчанию.
Можно ли как-нибудь заменить поведение по умолчанию при запуске cmd.exe
другой оболочкой, например PowerShell или Cygwin? В этой оболочке будут запускаться не только команды, которые я могу выполнить из меню «Пуск», либо из панели запуска, но если другие приложения захотят открыть оболочку, она откроется в указанной оболочке по умолчанию.
Чтобы было ясно, было бы неплохо, если бы был какой-то чистый способ приблизиться к этому (то есть параметр реестра или параметр конфигурации где-то, а не просто заменить исполняемый файл).