Главная 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 вы можете использовать любую команду, требующую повышения прав, например, чистая сессия команда.
Вот и все.

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

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

PowerShell 7.0.3 выпущен с несколькими исправлениями
PowerShell 7.0.3 выпущен с несколькими исправлениями
Microsoft выпустила небольшое обновление для PowerShell 7, новейшей версии языка сценариев Windows. Он содержит несколько исправлений ошибок. PowerShell 7, также известный как PowerShell Core, представляет собой кроссплатформенное решение для создания сценариев, доступное в Windows, MacOS и Linux. PowerShell 7 теперь использует .NET Core 3.1, но сохраняет обратную совместимость с модулями ранее.
6 лучших бесплатных программ для работы с электронными таблицами
6 лучших бесплатных программ для работы с электронными таблицами
Этот список лучших бесплатных программ для работы с электронными таблицами сэкономит вам кучу денег на программном обеспечении для работы с электронными таблицами и предоставит вам все функции, которые вы ищете.
Как создать группу в Telegram, управлять ею и выходить из нее
Как создать группу в Telegram, управлять ею и выходить из нее
На данный момент, наряду с WhatsApp, самым популярным приложением для чата является Telegram. Не без разногласий, приложение выдержало различные штормы и теперь стало очень популярным приложением для общения, обмена видео, стикеров и прочего. Сегодня я
Мгновенный перевод Venmo не работает? Вот что делать
Мгновенный перевод Venmo не работает? Вот что делать
Учебное пособие о том, что предпринять, если функция мгновенной передачи Venmo не работает должным образом.
Как бесплатно смотреть лучшие рождественские фильмы
Как бесплатно смотреть лучшие рождественские фильмы
Рождество уже здесь, а это означает бесконечный список дрянных рождественских фильмов. Но кто захочет выкладывать деньги на DVD или Blu-Ray, которые они будут воспроизводить только в течение одного месяца в году? Вот почему
Как заставить Discord работать в вашей школе или колледже
Как заставить Discord работать в вашей школе или колледже
Когда вы находитесь в школе, колледже или государственном учреждении, есть вероятность, что ваш доступ к определенным веб-сайтам ограничен. Это особенно актуально для социальных платформ или веб-сайтов для обмена контентом, которые могут обмениваться конфиденциальными данными. Поскольку Discord - это и то и другое,
Список кодов ошибок при установке Windows 10
Список кодов ошибок при установке Windows 10
Вот список кодов ошибок установки Windows 10 с описаниями. Прочтите его, чтобы узнать, почему не удается установить Windows 10 на ваш компьютер.