Как создать ярлык для файла hosts с правами администратора?

16

Как разработчик, я hostsчасто редактирую файл, чтобы добавить локальный виртуальный хост.

Поскольку hostsфайл должен быть отредактирован как администратор, я должен:

  1. Нажмите на меню Пуск
  2. Тип notepad
  3. Щелкните правой кнопкой мыши по значку блокнота и выберите Запуск от имени администратора.
  4. Нажмите Да
  5. Тогда открой ... C:\Windows\System32\drivers\etc\hosts

Довольно громоздко.

Я попытался создать ярлык для hostsфайла на рабочем столе, затем щелкнуть его правой кнопкой мыши, чтобы изменить дополнительные свойства ярлыка , но я не могу выбрать Запуск от имени администратора .

Ярлык расширенные свойства

Я думаю, это потому, что я создаю ярлык для файла, а не для notepadпрограммы.

Как создать ярлык для блокнота, который запускается от имени администратора и открывает файл hosts? Это нормально, если мне приходится каждый раз нажимать Да, чтобы подтвердить, что я хочу запустить программу от имени администратора.

Вениамин
источник

Ответы:

35

Ну вот:

  1. Щелкните правой кнопкой мыши на рабочем столе

  2. New> Ярлык

  3. введите "блокнот" в качестве местоположения

  4. Дайте ярлыку имя

  5. Щелкните правой кнопкой мыши -> Свойства на ярлыке

  6. в конце текстового поля «target» добавьте «% SYSTEMROOT% \ System32 \ drivers \ etc \ hosts» (не забудьте оставить пробел)

  7. Нажмите «Дополнительно»

  8. Проверьте Запуск от имени администратора

  9. затем нажмите ОК в обоих окнах

Вот вам, вам нужно будет подтверждать с UAC каждый раз, когда вы используете это.

KJ4IPS
источник
1
Работает, спасибо! Впрочем, после пропущенного обратного слеша %SYSTEMROOT%я не могу редактировать ваше сообщение, не изменив хотя бы 6 символов.
Бенджамин
@ Бенджамин получил его от меня, спасибо, что
сообщили
1
Работает с VSCode с целью:"C:\Program Files\VSCode\Code.exe" %SYSTEMROOT%\System32\drivers\etc\hosts
Ник Цай
5
  • Пакет CMD без подтверждения UAC

    Откройте новый текстовый файл, скопируйте и вставьте строку и сохраните ее как something.cmd

    runas /profile /user:Administrator /savecred "notepad C:\Windows\System32\drivers\etc\hosts"
    
  • Ярлык без подтверждения UAC

    Щелкните правой кнопкой мыши на рабочем столе »Новое» Ярлык

    cmd /c runas /profile /user:Administrator /savecred "notepad C:\Windows\System32\drivers\etc\hosts"
    

Оба метода сначала запросят пароль администратора и сохранят его.
Это работает только если ваша учетная запись администратора включена.

введите описание изображения здесь

nixda
источник
Элегантное решение, но: 1 / Я не понимаю, что вы имеете в виду под « Открыть новый текстовый файл» , вы имели в виду « Новый ярлык» ? 2 / К сожалению, я не использую учетную запись администратора, и это действительно не работает с моей учетной записью пользователя (даже если у меня есть права на запуск от имени администратора).
Бенджамин
Отредактировал мой ответ для уточнения
никсда
1
Благодарность! Лучшее решение, если у вас включена учетная запись администратора .
Бенджамин
3

Создайте папку с полными разрешениями для всех и добавьте ее в PATH.

Внутри него создайте файл, который называется sudo.cmdследующим текстом:

@echo Set objShell = CreateObject("Shell.Application") > %temp%\sudo.tmp.vbs
@echo args = Right("%*", (Len("%*") - Len("%1"))) >> %temp%\sudo.tmp.vbs
@echo objShell.ShellExecute "%1", args, "", "runas" >> %temp%\sudo.tmp.vbs
@cscript %temp%\sudo.tmp.vbs

Теперь при вводе текста sudo notepadБлокнот запустится с правами администратора (сначала с запросом UAC). Это действительно удобно (вы также можете sudo cmdили sudo AnyAppYouCanThinkOf).

Затем создайте файл с именем hosts.cmdи сохраните его со следующей строкой:

@sudo notepad %systemroot%\System32\drivers\etc\hosts

Теперь просто нажмите Winи введите hosts, затем нажмите, Enterи у вас появится приглашение UAC, чтобы открыть файл hosts в Блокноте!

gronostaj
источник