Несколько способов отобразить сообщение из командной строки
- Recluse
- 11.12.2021
- 17 908
- 5
- 26.11.2022
- 84
- 82
- 2
Командная строка в Microsoft Windows по прежнему активно используется для осуществления различных действий с операционными системами Windows, в том числе и для упрощенного выполнения каких-либо задач, или автоматизации выполняемых действий. В данной статье мы рассмотрим, казалось бы, не сложную задачу - вывод сообщения средствами командой строки, и различные способы осуществления данной задачи.
Использование echo
В данном примере мы рассмотрим использование команды echo, которая просто выводит в окне командной строки текст. Используя её совместно с командной start можно добиться появления отдельного окна командной строки с заданным текстом.
Вот так будет выглядеть пример, выводящий сообщение "Привет мир!" в командной строке.
start cmd /c "echo Привет мир! && pause"
Дополнив пример выше несколькими дополнительными командами и пробелами, сделаем более "красивый" вариант с отображением текста в командной строке:
start "" cmd /c "echo(&echo(&echo Привет мир! &echo(&pause>nul"
Использование msg
Программа msg поставляется вместе с Windows еще со времен версий Windows 2000 и Windows XP, и предназначена для передачи сообщений от одного пользователя другому пользователю. Она предлагает простые возможности по выводу сообщения, и так же проста в использовании.
В качестве примера, выведем сообщение "Привет мир!":
msg %username% "Привет мир!"
Использование mshta
Mshta - программа, предназначенная для запуска приложений формата hta, которые представляют из себя программы, написанные с использованием HTML, CSS, JavaScript и VBScript. В данном случае, нам пригодиться возможность выполнения команд, написанных на языке JavaScript и VBScript. Используя знания данных языков, можно выводить сообщения.
Сперва рассмотрим возможности использования скриптового языка VBScript совместно с mshta.
Выведем сообщение "Привет мир!":
mshta vbscript:Execute("msgbox ""Привет мир!"":close")
Добавим в наше сообщение заголовок "Пример":
mshta vbscript:Execute("msgbox ""Привет мир!"",0,""Пример"":close")
Сделаем так, чтобы в сообщении были различные значки. Начнем со значка с ошибкой:
mshta vbscript:Execute("msgbox ""Привет мир!"",16,""Заголовок"":close")
Сменим его на вопросительный знак:
mshta vbscript:Execute("msgbox ""Привет мир!"",32,""Заголовок"":close")
Или, на значок информации:
mshta vbscript:Execute("msgbox ""Привет мир!"",48,""Заголовок"":close")
Теперь рассмотрим возможности mshta с JavaScript.
Отобразим сообщение "Привет мир!":
mshta javascript:alert("Привет мир!");close();
Выведем сообщение, состоящее из нескольких строк:
mshta javascript:alert("Привет мир!\nИ снова привет мир!\n\nВсе еще привет мир!");close();
Использование PowerShell
Из командной строки так же можно вызвать оболочку PowerShell, передав ей все необходимые параметры, в результате чего будет отображено окно с нужным сообщением.
powershell [Reflection.Assembly]::LoadWithPartialName("""System.Windows.Forms""");[Windows.Forms.MessageBox]::show("""Привет мир!""", """Пример""")
Добавить комментарий