Домашня » як » Як ви визначаєте функцію PowerShell, яка вимагає висоти?

    Як ви визначаєте функцію PowerShell, яка вимагає висоти?

    PowerShell може бути надзвичайно корисним для багатьох повсякденних завдань, як є, але якщо вам потрібно налаштувати деякі функції з деякою безпекою на увазі, то як ви визначаєте функцію так, щоб вона вимагала піднесення? Сьогоднішня стаття SuperUser Q&A має відповідь на запитання цікавого читача.

    Сьогоднішня сесія запитань та відповідей приходить до нас люб'язно SuperUser - підрозділ Stack Exchange, групування веб-сайтів із запитаннями та відповідями на рівні спільноти..

    Питання

    Читач SuperUser Vlastimil хоче знати, як визначити функцію PowerShell, яка вимагає піднесення:

    Оскільки я не можу знайти жодних альтернатив для Linux sudo Команда elevation, у мене є наступне питання. Як визначити функцію PowerShell, яка вимагає піднесення, як у активації рядка UAC на моєму Windows 8.1 Pro, 64-бітної системі? Наприклад, скажімо, я виконую наступну функцію:

    З такими результатами:

    Щоб бути цілком зрозумілим, якщо я запускаю PowerShell як “користувач”, тоді запустіть вищезгадану функцію перевірка системи, Я хочу, щоб функція підвищувалася, щоб мати можливість виконувати команду (я хочу, щоб з'явилася UAC-приказка).

    Як визначити функцію PowerShell, яка вимагає підвищення?

    Відповідь

    Співробітник SuperUser Аштон має відповідь для нас:

    Щоб запустити певну команду з підвищеного вікна:

    Наприклад:

    Щоб запустити певний сценарій із підвищеного вікна:

    Щоб запустити весь сеанс PowerShell, який запрошує UAC:

    Функція для повернення $ True або $ False якщо поточне вікно запущено з підвищеними дозволами:

    Щоб переконатися, що сценарій запускається лише як адміністратор, додайте його до початку:

    У PowerShell v4.0 вищезазначене можна спростити за допомогою a #Requires заява:

    Джерело: Запуск із підвищеними дозволами [SS64.com]


    Маєте щось додати до пояснення? Звучить в коментарях. Хочете прочитати більше відповідей від інших технологічних користувачів Stack Exchange? Перегляньте повний потік обговорення тут.