Войти

Показать полную графическую версию : [решено] Переименование файлов в профиле пользователя на других ПК


virus_prok
02-03-2016, 15:01
Добрый день.
Есть задача:
Есть txt файл со списком компьютеров. На этих компьютерах требуется определить текущего пользователя и в папке "%userprofile%\appdata\roaming\папка программы" переименовать ini-файл.
Что делал я:
Создал CMD файл в котором:

for /F "tokens=*" %%A in (список компьютеров.txt) do (PsExec.exe -s -d \\%%A cmd.exe /c \\путь\исполняемый_файл.cmd)

в исполняемом файле:
copy "%userprofile%\appdata\roaming\папка программы\файл.ini" "%userprofile%\appdata\roaming\папка программы\файл_old.ini"

Не работает.
Пробовал разные варианты, если прописывать абсолютный путь(\\имя_компьютера\users\имя_пользователя\appdata\и тд) работает.
Думаю, что в моей конструкции всё должно быть сложнее, но знаний не хватает. Помогите, пожалуйста.

Iska
02-03-2016, 15:11
в исполняемом файле:
copy "%userprofile%\appdata\roaming\папка программы\файл.ini" "%userprofile%\appdata\roaming\папка программы\файл_old.ini"
Не работает. »
Работает. Но для того пользователя, от чьего имени запущен «psexec.exe».

Помогите, пожалуйста. »
Используйте групповую политику — logon-скрипт.

virus_prok
02-03-2016, 16:53
А нельзя здесь где то:
for /F "tokens=*" %%A in (список компьютеров.txt) do (PsExec.exe -s -d \\%%A cmd.exe /c \\путь\исполняемый_файл.cmd)
Определить, что cmd надо запускать под текущим залогиненым пользователем?

Iska
02-03-2016, 17:35
Я Вам, кстати, сбрехал насчёт пользователя — Вы ведь запускаете от имени:
-s Run the remote process in the System account.

virus_prok
03-03-2016, 06:25
В общем решил действительно накатить CMDшник политикой, спасибо за советы.




© OSzone.net 2001-2012