Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Переименование папки и копирование новой из сети.

Ответить
Настройки темы
CMD/BAT - Переименование папки и копирование новой из сети.

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте.
Мне поставили задачу, автоматизировать процесс обновления программы.
Что бы Вы понимали, мне нужно почти каждый день, переименовать локальную и скопировать из сети новую папку (обновление) примерно на 30 компа. Если это делать в ручную, то работа занимает как минимум весь рабочий день и при этом нужно намотать примерно 18-20 км по территории огромного завода.

Мне нужен бат файл, который будет выполнять следующее:

1. rename "C:\loc******\Factory" "Factory_(дата установки обновления такого формата 2017_06_17)" (Перед тем как копировать новую папку, нужно старую переименовать - добавить к ней дату. )
2. После этого нужно скопировать из сети (папка будет на компе: 192.168.1.11\www\Factory новую папку Factory, в C:\loc******\)

Создать папку с датой - научился, но вот переименовать, что то никак. (((
Помогите пожалуйста.

Отправлено: 08:16, 17-06-2017

 

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Вы ничего не сказали о Вашей сети и об организации машин в ней.

Цитата Lorttt:
и при этом нужно намотать примерно 18-20 км по территории огромного завода. »
Зачем наматывать?

Что скрывается под выделенным?
Цитата Lorttt:
"C:\loc******\Factory" »
Что делать, если таких папок окажется несколько?

Цитата Lorttt:
папка будет на компе: 192.168.1.11\www\Factory »
Машина имеет имя? Почему обращение идёт по ip-адресу вместо имени?

Отправлено: 09:32, 17-06-2017 | #2



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


что значит
Цитата Lorttt:
но вот переименовать, что то никак »
что вы делаете, и что выдаёт компьютер?

Цитата Iska:
Зачем наматывать? »
Человеку дали отличный стимул для постижения азов программирования - аплодирую руководству стоя!

Отправлено: 09:46, 17-06-2017 | #3


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Iska:
Вы ничего не сказали о Вашей сети и об организации машин в ней. »
Доменная внутренняя сеть.

Цитата Iska:
Что скрывается под выделенным? »
Там длинный путь из несколько папок.

Цитата Iska:
Машина имеет имя? Почему обращение идёт по ip-адресу вместо имени? »
У нас сотни машин, и все спрятано, а по этому айпи - есть папка с полным доступом для всех. Я бы туда закидывал папку с обновой, и все пользователи , после моего телефонного звонка просто будут запускать батфайл.

Цитата Busla:
что вы делаете, и что выдаёт компьютер? »
Я имел ввиду, что поиск гугла не помог найти мне , как правильно переименовать, что бы дописать к папке дату.

Отправлено: 09:54, 17-06-2017 | #4


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата Busla:
Человеку дали отличный стимул для постижения азов программирования - аплодирую руководству стоя! »
Не вижу стимула.

Я не могу понять — зачем вообще куда-то ходить? Есть десятки способов удалённого управления, была бы физическая связь между машинами.


Цитата Lorttt:
Там длинный путь из несколько папок. »
Путь постоянный и идентичный на всех машинах?

Цитата Lorttt:
У нас сотни машин, и все спрятано, а по этому айпи - есть папка с полным доступом для всех. Я бы туда закидывал папку с обновой, и все пользователи , после моего телефонного звонка просто будут запускать батфайл. »
Как должно быть:
  • машина с разделённым ресурсом, доступном всем машинам домена, ресурс может быть для них — только для чтения, для Вас — и на запись;
  • на этом ресурсе Вы периодически выкладываете обновлённое содержимое;
  • на всех потребных машинах групповой политикой при старте машины запускается пакетный файл/скрипт WSH или PowerShell, который по некоему признаку проверяет наличие новой версии на этом разделённом ресурсе — например, по версии основного исполняемого файла, буде таковой;
  • если версия на разделённом ресурсе более новая, нежели на машине, где этот скрипт исполняется — последний производит копирование нового содержимого с разделённого ресурса на локальную машину и завершает свою работу.
И никаких хождений, звонков, «закройте программу — нам надо обновить» и т.п.

А самый правильный вариант — использовать msi и те же групповые политики. Но я за это даже не заикаюсь уже.

Отправлено: 10:52, 17-06-2017 | #5


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Iska:
Я не могу понять — зачем вообще куда-то ходить? Есть десятки способов удалённого управления, была бы физическая связь между машинами. »
Я не могу сказать где работаю, но за посторонние проги, типа рАдмина и так далее - сразу с работы увольняют. Нельзя.
По этому, сотрудник должен лично прийти и установить.

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

Отправлено: 11:55, 17-06-2017 | #6


Ветеран


Сообщения: 1274
Благодарности: 564

Профиль | Отправить PM | Цитировать


Lorttt,
мы в 21 веке живем - выбейте себе мотороллер

Отправлено: 12:03, 17-06-2017 | #7


Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


Lorttt,
Вот решение так, как Вы поставили задачу, но так делать не нужно, надо менять организацию работ
Код: Выделить весь код
@Echo Off

Set "BoxRoot=C:\loc"
Set "BoxEnd=Factory"
Set "BoxFrom=\\192.168.1.11\www\Factory"

Set "DtTime=%Date:~6,4%_%Date:~3,2%_%Date:~0,2%_%Time::=%"

FOR /F "usebackq delims=" %%d IN (`Dir "%BoxRoot%\%BoxEnd%" /S /B /A:D`) DO Set "BoxIn=%%d" &Set "BoxOut=%%d-%DtTime%"

move /Y "%BoxIn%" "%BoxOut%" >nul
md "%BoxIn%" >nul
xcopy /E "%BoxFrom%\*.*" "%BoxIn%\" 1>nul

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:12, 17-06-2017 | #8


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата Lorttt:
Я не могу сказать где работаю »
Этого не требуется, товарищ майор .

Цитата Lorttt:
но за посторонние проги, типа рАдмина и так далее - сразу с работы увольняют. Нельзя. »
Всё укладывается в рамки программного обеспечения, входящего в комплект поставки ОС.

Цитата Lorttt:
По этому, сотрудник должен лично прийти и установить. »
Какой в этом смысл? Не понимаю.

Цитата Lorttt:
программист что-то где то в коде изменяет и дает потом целую папку. Версионность непонятно как определять. »
1. Спросить у программиста, меняет ли он при этом, в ручном режиме или автомтически при сборке, номер версии исполняемого файла.
2. Проверить самому.

А ходить по машинам и копировать ручками (или управлять ручным запуском пакетного файла по телефону) — тут сразу вспоминается «Да что же мы, дикари?! В XVIII веке живём!» .

Update: пока писал — вон уже и коллега alpap явно вспомнил тот же эпизод .

Отправлено: 12:15, 17-06-2017 | #9


Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


Iska, Иной раз статус айтишника в организации между уборщицей и секретаршей - секретарша главнее, так что, alpap, мотороллер ему не светит - по рангу не положен. На свои деньги купить самокат и, если удастся с ним просочиться через проходную, то вперёд и с песнями

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Отправлено: 12:23, 17-06-2017 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Переименование папки и копирование новой из сети.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Копирование файла и переименование согласно списка из exel TPOJIb_55 Скриптовые языки администрирования Windows 4 01-06-2016 09:28
[решено] копирование файлов из нерасшаренной папки kupall Хочу все знать 6 18-06-2015 13:18
CMD/BAT - Копирование файлов из подкаталогов и их переименование в название папки lexxxyatina Скриптовые языки администрирования Windows 7 13-11-2014 09:44
PowerShell - Копирование отдельных файлов из папки в PS Евгений_Никулин@vk Скриптовые языки администрирования Windows 2 10-02-2014 17:07
VBS/WSH/JS - [решено] переименование и копирование папки Anufriev Скриптовые языки администрирования Windows 6 22-05-2012 08:11




 
Переход