wiznv
20-06-2014, 13:54
Вот текст скрипта для бэкапа файлов с помощью robocopy :
robocopy D:\исходная_папка \\192.168.0.1\целевая_папка /E /Z /COPY:TDASO /DCOPY:T /M /R:2 /W:5
условия задачи: Нужно выполнять этот скрипт при выключении ПК и копировать папку текущего доменного пользователя в сетевую шару с созданиям папки с названием логина пользователя.
исправьте если ошибаюсь, но в данном случае определине текущего пользователя невозможно и целевая папка не создастся т.к. теоритически имя пользователя не постоянно , их может быть несколько на одном ПК и при выключении
происходит выход из системы пользователя, а в этом время будет выполнятся скрипт. Переменные среды вида %userfolder% тоже не помогут по тем же причинам. Поэтому нужен скрипт с условиями и сравнением переменных, но я не силен в написание сложных скриптов и прошу помочь в его написании:
Мысли на счет решения: : Т.к. имя компьютера постоянное, то нужно составить список соответствия - компьютера(а2) и имени пользователя(b2) - a2=b2
Скрипт должен сравнить фактическое имя компьютера (а1, командой hostname), со списком и если фактическое имя компьютера совпадет с одним из списка (a1=a2) , то нужно присвоить значение из списка b2 фактическому именя пользователя b1 т.е. b2=b1
т.е.
a1=b1
если a2=a1, то
b2= b1.
Ну и потом присовить эти значение переменным в строке параметров robocopy
Верно ?
Если компьютеров 50 то нужно создавать 50 переменных для списка потом 50 условий... или есть способ проще.. ?
Как в скрипте вытащить данные из текстового файла чтобы не писать весь список в скрипте ?
robocopy D:\исходная_папка \\192.168.0.1\целевая_папка /E /Z /COPY:TDASO /DCOPY:T /M /R:2 /W:5
условия задачи: Нужно выполнять этот скрипт при выключении ПК и копировать папку текущего доменного пользователя в сетевую шару с созданиям папки с названием логина пользователя.
исправьте если ошибаюсь, но в данном случае определине текущего пользователя невозможно и целевая папка не создастся т.к. теоритически имя пользователя не постоянно , их может быть несколько на одном ПК и при выключении
происходит выход из системы пользователя, а в этом время будет выполнятся скрипт. Переменные среды вида %userfolder% тоже не помогут по тем же причинам. Поэтому нужен скрипт с условиями и сравнением переменных, но я не силен в написание сложных скриптов и прошу помочь в его написании:
Мысли на счет решения: : Т.к. имя компьютера постоянное, то нужно составить список соответствия - компьютера(а2) и имени пользователя(b2) - a2=b2
Скрипт должен сравнить фактическое имя компьютера (а1, командой hostname), со списком и если фактическое имя компьютера совпадет с одним из списка (a1=a2) , то нужно присвоить значение из списка b2 фактическому именя пользователя b1 т.е. b2=b1
т.е.
a1=b1
если a2=a1, то
b2= b1.
Ну и потом присовить эти значение переменным в строке параметров robocopy
Верно ?
Если компьютеров 50 то нужно создавать 50 переменных для списка потом 50 условий... или есть способ проще.. ?
Как в скрипте вытащить данные из текстового файла чтобы не писать весь список в скрипте ?