2015-08-21 4 views
0

Я пытаюсь очистить все наши профили пользователей. У меня написан пакетный файл, который удалит все файлы/каталоги для зарегистрированного пользователя, когда он будет запущен. Однако мы хотим, чтобы этот прогон для всех пользователей в выходные, когда они не вошли в систему. Я новичок в Vb Script, а также в кодировании в целом. Разные мысли, чтобы решить эту проблему, заключались в том, чтобы запустить обратный цикл всех наших профилей пользователей, которые будут записывать каждое имя пользователя, найденное в массив. Затем пакетный файл вызовет каждое имя из массива, чтобы пройти, и запустить процесс удаления. Однако, как я уже сказал, я очень новичок и неопытен в массивах и петлях.Запуск командного файла для всех профилей пользователей

Это пакетный файл я написал:

MOVE "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\Extensions" "C:\Users\%username%\AppData\Local\Google\Chrome\" 
MOVE "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\Bookmarks" "C:\Users\%username%\AppData\Local\Google\Chrome" 
Move "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\Bookmarks.bak" "C:\Users\%username%\AppData\Local\Google\Chrome" 
Move "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\Preferences" "C:\Users\%username%\AppData\Local\Google\Chrome" 
Move "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\History-journal" "C:\Users\%username%\AppData\Local\Google\Chrome" 
Move "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\History" "C:\Users\%username%\AppData\Local\Google\Chrome" 
del /S /Q "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\*" 
MOVE "C:\Users\%username%\AppData\Local\Google\Chrome\Bookmarks" "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\" 
MOVE "C:\Users\%username%\AppData\Local\Google\Chrome\Bookmarks.bak" "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\" 
MOVE "C:\Users\%username%\AppData\Local\Google\Chrome\Preferences" "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\" 
MOVE "C:\Users\%username%\AppData\Local\Google\Chrome\Extensions" "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\" 
MOVE "C:\Users\%username%\AppData\Local\Google\Chrome\History-journal" "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\" 
MOVE "C:\Users\%username%\AppData\Local\Google\Chrome\History" "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\" 

Я предполагаю, что% имя пользователя% должны быть изменены, чтобы вместо того, чтобы позвонить из массива. Любая помощь, которую вы можете дать в отношении любой части процесса, будет высоко оценена. Спасибо.

ответ

0

EDIT: Теперь я знаю, чего вы хотите.
Я изменил все %username% на %%a, так как мы получаем имена пользователей от ALL_USERNAME_ARE_STORED_HERE.txt Строка за строкой.

@Echo off 
Setlocal EnableDelayedExpansion 

for /f "tokens=*" %%a in (ALL_USERNAME_ARE_STORED_HERE.txt) do (
    MOVE "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\Extensions" "C:\Users\%%a\AppData\Local\Google\Chrome\" 
    MOVE "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\Bookmarks" "C:\Users\%%a\AppData\Local\Google\Chrome" 
    Move "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\Bookmarks.bak" "C:\Users\%%a\AppData\Local\Google\Chrome" 
    Move "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\Preferences" "C:\Users\%%a\AppData\Local\Google\Chrome" 
    Move "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\History-journal" "C:\Users\%%a\AppData\Local\Google\Chrome" 
    Move "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\History" "C:\Users\%%a\AppData\Local\Google\Chrome" 
    del /S /Q "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\*" 
    MOVE "C:\Users\%%a\AppData\Local\Google\Chrome\Bookmarks" "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\" 
    MOVE "C:\Users\%%a\AppData\Local\Google\Chrome\Bookmarks.bak" "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\" 
    MOVE "C:\Users\%%a\AppData\Local\Google\Chrome\Preferences" "C:\Users\%%aAppData\Local\Google\Chrome\User Data\Default\" 
    MOVE "C:\Users\%%a\AppData\Local\Google\Chrome\Extensions" "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\" 
    MOVE "C:\Users\%%a\AppData\Local\Google\Chrome\History-journal" "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\" 
    MOVE "C:\Users\%%a\AppData\Local\Google\Chrome\History" "C:\Users\%%a\AppData\Local\Google\Chrome\User Data\Default\" 
) 

pause >nul 

Позвольте мне знать, если я снова не понял вас ...
* Двойная проверка все %username% заменяются на %%a.

+0

Благодарим вас за сценарий. Это создаст динамический массив, который имеет все больший предел? Как я уже сказал, я новичок в таких вещах, поэтому я хочу понять это так хорошо, как только смогу. Почему следующие строки ?: echo% array [0]% echo% array [4]% echo% array [9]% смысл, почему просто 0, 4, 9? –

+0

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

+0

'echo' - это просто пример, позволяющий увидеть результат. Ну, в соответствии с 'C++', массив целочисленного типа хранит 4 байта данных (если не ошибаюсь), поэтому я предполагаю, что до того, как он полностью заполнит ваш жесткий диск, достаточно массивов :) –