Главная Windows Как проверить пакетный файл, если вы используете его с повышенными правами

Как проверить пакетный файл, если вы используете его с повышенными правами



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

Реклама


Когда какое-либо консольное приложение правильно завершает свою работу, переменная% errrorlevel% сохраняет в качестве своего значения 0.
Откройте новый экземпляр командной строки и запустите команду dir. После этого распечатайте значение% errorlevel% с помощью команды echo:

dir echo% errorlevel%

На выходе будет 0.
dir errorlevel
Теперь давайте попробуем выполнить команду, требующую повышения прав, из обычного окна командной строки без повышенных прав. Например, давайте попробуем открытые файлы команда, требующая прав администратора.
Если вы напечатаете значение% errorlevel%, оно не будет равно 0, потому что команда openfiles не сможет показать открытые файлы без прав администратора.
openfiles errorlevel 1
Однако, если вы запустите его из командной строки с повышенными привилегиями ( вот как открыть командную строку администратора ), он покажет вам открытые файлы и вернет 0, как и ожидалось.
уровень ошибки openfiles 0
Используя эту функцию, можно реализовать простую проверку в командном файле:

@echo off openfiles> NUL 2> & 1 if NOT% ERRORLEVEL% EQU 0 goto NotAdmin echo Привет из командной строки с повышенными привилегиями goto End: NotAdmin echo Эта командная строка НЕ ​​ПОДНИМАЕТСЯ: End

Обратите внимание, что я использую перенаправление вывода, чтобы подавить любой вывод команды openfiles. В части '> NUL 2> & 1' вывод команды по умолчанию перенаправляется в никуда (NUL), а вывод ошибки перенаправляется на стандартный вывод, то есть также на NUL.
Вместо команды openfiles вы можете использовать любую команду, требующую повышения прав, например, чистая сессия команда.
Вот и все.

Интересные статьи

Выбор редакции

Исправить ошибку Это приложение было заблокировано для вашей защиты в Windows 10
Исправить ошибку Это приложение было заблокировано для вашей защиты в Windows 10
Чтобы предотвратить появление сообщения Это приложение было заблокировано для вашей защиты в Windows 10, и установите необходимое приложение, следуйте этой инструкции.
Максимально возможное использование Windows 10 на устройстве 2-в-1
Максимально возможное использование Windows 10 на устройстве 2-в-1
Красивое устройство - это только часть истории. Если программное обеспечение, которое на нем работает, не оптимизировано для устройства, у вас будут проблемы. Windows 10 поддерживает 2-дюймовые
iPhone против Android: что лучше для вас?
iPhone против Android: что лучше для вас?
При покупке смартфона сделать выбор между iPhone и Android непросто. Они похожи, но различаются в важных областях. Получите факты, чтобы вы могли сделать выбор, который подходит именно вам.
Как сделать личную историю в приложении Snapchat
Как сделать личную историю в приложении Snapchat
Почему истории Snapchat так полезны? Составление истории - один из самых быстрых способов опубликовать основные моменты вашего дня или события. Это также один из самых быстрых способов поймать
Как всегда показывать панель закладок Google Chrome
Как всегда показывать панель закладок Google Chrome
Используйте настройки Chrome или сочетание клавиш, чтобы отобразить панель закладок.
Обзор Sony Vegas Pro 10
Обзор Sony Vegas Pro 10
Потребительское приложение Sony для редактирования видео Vegas Movie Studio Platinum недавно вошло в наш список лучших благодаря своим оптимизированным, мощным инструментам редактирования и отзывчивому интерфейсу. Vegas Pro - это, по сути, то же программное обеспечение с различными улучшениями, предназначенное для энтузиастов и профессионалов.
Что означает «чувствительность к регистру»?
Что означает «чувствительность к регистру»?
Если что-то чувствительно к регистру, то имеет значение, используете ли вы прописные или строчные буквы. Пароли и команды часто чувствительны к регистру.