pycoding Ответов: 2

Как я могу запускать команды/скрипты от имени администратора?


Привет,
Я хочу запустить скрипт под названием scan.py в моем командном терминале. Я набираю текст
python scan.py
Мне сказали, поскольку это не работает, открыть окно CMD от имени администратора. Так что окно показывает мне C:\Windows\system32>.
Поэтому мой вопрос заключается в том, как мне запустить свой сценарий оттуда, не вводя путь к сценарию.

Что я уже пробовал:

(Я попробовал это сделать, и он снова будет работать как обычный пользователь, а не как администратор) должен ли я переместить файл в каталог system32?
Бегущий
"runas /user:administrator C:\users....\scan.py
просит меня ввести пароль администратора, но все мои предложения были (я попробовал свой собственный пароль и просто нажал enter, оба не сработали) неправильными.

2 Ответов

Рейтинг:
1

Patrice T

Цитата:
Как я могу запускать команды/скрипты от имени администратора?

Во-первых, чтобы запустить приложение от имени администратора, вам нужно иметь права администратора или знать имя пользователя и пароль администратора.
Цитата:
Поэтому мой вопрос заключается в том, как мне запустить свой сценарий оттуда, не вводя путь к сценарию.

Короткий ответ-нет. Это все равно что отправить письмо без указания адреса.
Цитата:
Должен ли я переместить файл в каталог system32?

Плохая идея, этот каталог защищен и не предназначен для общего использования. Лучше перейти в правильный каталог, например:
CD c:\myapp


Рейтинг:
0

phil.o

По умолчанию при открытии командной строки от имени администратора текущий каталог имеет значение C:\Windows\System32-да.
Вам просто нужно перейти в каталог (cd path\to\your\py\file) где находится ваш файл .py, и выдайте python scan.py команда (предполагая, что исполняемый файл python находится в вашей переменной path, что, по-видимому, так и есть).

"Должен ли я переместить файл в каталог system32"
Ни при каких обстоятельствах вы не должны помещать скрипт python в этот каталог. Лучше понять принцип путей и команд.

runas /user:administrator C:\users....\scan.py
Вы должны понимать, что ваш должен запустить python исполняемый файл, а не непосредственно скрипт .py.
Правильная команда была бы лучше runas /user:administrator python "C:\users....\scan.py"
Лучше заключить полный путь к скрипту между кавычками, просто чтобы убедиться, что он понимается как аргумент исполняемого файла python.


pycoding

Спасибо за ваш ответ. Работает "рунас /пользователей: "администратор" питон "C\users\....\scan.py" говорит мне: синтаксис РУНАС
RUNAS [ [/noprofile |/profile] [/env] [/savecred] [/netonly] ]
/смарт-карта [/user:<benutzername>] Программа

RUNAS [ [/noprofile |/profile] [/env] [/savecred] ]
/смарт-карта [/user:<benutzername>] Программа
RUNAS /trustlevel: программа <trstlevel>

/объяснение всего [/xxxx]

примеры:
>runas /noprofile /user:mymachine\administrator cmd
>больше двух примеры ..

Примечание: /профиль не совместим с /netonly
Примечание: /savecred не совместим с /Смарт-Картой

Я не знаю, что со всем этим делать, но я так или иначе должен положить что-то еще в свой cmd..?!

phil.o

Ты можешь попробовать
runas /user:administrator "python C:\users....\scan.py"
(заключая в себя весь питон... команда между кавычками)
Или вы также можете взглянуть на этот пост SO: Запрос на повышение прав контроля учетных записей в Python-скрипт?.