Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Задачи на bat-файлах 8

Автор: mugil_cephalus
Дата сообщения: 26.05.2010 18:17
boy999

Цитата:
В командную строку ввёл: for /f "tokens=*" %a in ('dir /b /s "S:\Lula 3D"') do copy C:\Lula_clothes.dds

В ответ: Файл по прежнему не найден.


Цитата:
copy здесь пишешь полный путь до нового файла вместе с именем. Если в этом пути есть имена папок с пробелами, то заключай весь путь в кавычки. "%a" /y

Автор: cluster
Дата сообщения: 26.05.2010 19:30
boy999
Вот командный файл для твоей задачи. Сохрани этот код в файл cmd или bat, положи в каталог "S:\Lula 3D" и оттуда запускай

Файл 1.cmd

Код: @echo off
for /f %%i in ('dir /b /s /ad') do if exist %%i\Lula_clothes.dds copy c:\Lula_clothes.dds /y %%i
Автор: wolf0425
Дата сообщения: 26.05.2010 19:53

Цитата:
Вот командный файл для твоей задачи.
а лучше вот:

Код: @echo off
pusd "s:\Lula 3D"
for /f "delims=" %%i in ('dir /b /s /a-d Lula_clothes.dds') do copy /y c:\Lula_clothes.dds "%%~fi"
Автор: boy999
Дата сообщения: 26.05.2010 23:33

Цитата:
@echo off
pusd "s:\Lula 3D"
for /f "delims=" %%i in ('dir /b /s /a-d Lula_clothes.dds') do copy /y c:\Lula_clothes.dds "%%~fi"



Сработало........
но игра не запускаеццо:
Переставлять буду.....
Автор: Olegfan
Дата сообщения: 27.05.2010 06:04
Подскажите плиз, такая задача - нужно удалять файлы по расширению в папке и всех её подпапках. Проблема в том, что количесво и название подпапок могут меняться. Заранее спасибо тому, кто пнёт в нужном направлении, кроме универсального с минимальным количеством символов
Автор: wolf0425
Дата сообщения: 27.05.2010 06:54

Цитата:
Подскажите плиз, такая задача - нужно удалять файлы по расширению в папке и всех её подпапках.
del /?
Автор: Joo1z
Дата сообщения: 27.05.2010 08:05
wolf0425
Тьфу, забыл в цикле указать что ищем: Lula_clothes.dds
Olegfan
А если точнее, DEL /S filename.ext
Автор: boy999
Дата сообщения: 27.05.2010 11:31
Замена везде сработала, но труселя не исчезли

Передок ток улучшился, хи-хи....


Винда щас глючит, виснет и вырубать её приходится кнопкой резет, а это ж здоровья винде не прибавляет....

Батничег можно, на резет и отмену выключения\резета!?
Автор: sjsash
Дата сообщения: 27.05.2010 11:44
Доброго времени суток уважаемы експерты, нужна ваша помощь в написании bat-ника.

Суть задачи с комп1\експорт\ передать все файлы xml на комп2\импорт\ через
\\сервер\xml\ двумя bat-никами.

1.bat: копирует с комп1 на сервер запускается с комп1
2.bat: копирует с сервер на комп2 запускается с комп2
Имена файлов при каждом експорте меняются (название таблици; время; дата)

Условия:
1. шарить комп1 и комп2 в сети нельзя
2. 1.bat проверяет есть ли файлы *.xml на комп1\експорт\*.xml если есть - копирует на
\\сервер\xml\*.xml, ПОСЛЕ копирования с комп1 на сервер провести сравнение файлов,
если повреждений нет - удалить оригиналы.
3. 2.bat проверяет есть ли на \\сервер\XML\*.xml xml файлы с атрибутом архивный,
если есть - копирует все xml файлы с атрибутом архивный на комп2\импорт\*.xml,
ПОСЛЕ копирования с сервера на комп2 провести сравнение файлов, если повреждений
нет - снимает атрибут архивный с файлов на сервере.
4. Файлы должны остатся на сервере как резервные копии и удаляются раз в 3 месяца
вручную.
5. Хотелось бы видеть в процесе работы на экране результаты выполнения команд
bat-никами (отсутствие файлов на комп1 или атрибута файлов на сервер, ошибки-какие или все норм и т.д.)

Трудности у меня вызывают три момента:
1) ПОСЛЕ копирования с комп1 на сервер провести сравнение файлов
2) 2.bat проверяет есть ли на \\сервер\XML\*.xml xml файлы с атрибутом архивный,
если есть - копирует все xml файлы с атрибутом архивный на комп2\импорт\*.xml,
ПОСЛЕ копирования с сервера на комп2 провести сравнение файлов, если повреждений
нет - снимает атрибут архивный с файлов на сервере.
3) в процесе работы на экране результаты выполнения команд bat-никам
(отсутствие файлов на комп1 или атрибута файлов на сервер, ошибки-какие или все норм и т.д.)

Ну вроде все описал. Если что не понятно с удовольствием отвечу.

Заранее спасибо.
Автор: Sustaw
Дата сообщения: 27.05.2010 15:23

Цитата:
Вопрос такой: как постоянно, через .bat удалять директории с файлами, если названия директорий каждый раз разные, оставляя директории, срок создания которых менее 3 дней? Примеру скрипта был бы очень рад.

Цитата:
можно тупо - имена директориям давать в формате yyyy-mm-dd
после чего отсортировать по имени и удалять начиная с четвертой...


можно все таки пример скрипта для удаления? А то весь день голову ломаю


Цитата:
mkdir "C:\dirname1\dirname2\%date:~6,4%%date:~3,2%%date:~0,2%\"
move c:\dirname3\*.* "C:\dirname1\dirname2\%date:~6,4%%date:~3,2%%date:~0,2%\"
Автор: cluster
Дата сообщения: 27.05.2010 15:44

Цитата:
Батничег можно, на резет и отмену выключения\резета!?

shutdown /?
Автор: king_stiven
Дата сообщения: 27.05.2010 16:04
Sustaw
Тебе ссылку в шапку давали.

Добавлено:

Цитата:
можно тупо - имена директориям давать в формате yyyy-mm-dd
после чего отсортировать по имени и удалять начиная с четвертой...

То есть ты делаешь каждый день по папке? Тогда можно через dir /t:c /a:d /s /b
Автор: koddy
Дата сообщения: 27.05.2010 22:48
Нужно из ipconfig выцепить один адрес.
Пытаюсь сделать это так:

Код:
for /f "tokens=1* delims=:. " %%a in ('ipconfig ^| find /i "1.8"') do set GATE=%%b

echo %GATE%
Автор: Olegfan
Дата сообщения: 28.05.2010 00:10
wolf0425
Joo1z
Действительно, забыл про этот ключик, сенкс!
Автор: wolf0425
Дата сообщения: 28.05.2010 01:14
Sustaw
Цитата:
можно все таки пример скрипта для удаления? А то весь день голову ломаю

Код: mkdir "C:\dirname1\dirname2\%date:~6,4%%date:~3,2%%date:~0,2%\"
move c:\dirname3\*.* "C:\dirname1\dirname2\%date:~6,4%%date:~3,2%%date:~0,2%\"
Автор: nNau
Дата сообщения: 28.05.2010 05:49
koddy
Попробуйте в перечислении delims убрать точку, оставьте только двоеточие.
Или задайте tokens=2*
Автор: Sustaw
Дата сообщения: 28.05.2010 07:58

Цитата:
@echo off
mkdir "C:\dirname1\dirname2\%date:~6,4%%date:~3,2%%date:~0,2%\"
move c:\dirname3\*.* "C:\dirname1\dirname2\%date:~6,4%%date:~3,2%%date:~0,2%\"

for /f "skip=3 delims=" %%a in ('dir /b /ad /o-n "C:\dirname1\dirname2\" ^| findstr /r /b /c:"[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]"') do echo rd /q /s "C:\dirname1\dirname2\%%~a"



Цитата:
проверь что хочет правильно удалять, после чего убери echo
если посторонних каталогов в dirname2 точно нет - то танцы с бубном ( ^| findstr ...) там немного лишние, но случай бывает всякий...


все работает, огромное спасибо!
Автор: Akela50
Дата сообщения: 28.05.2010 08:54
По поиску и в факах шапки, к сожалению, не нашёл...

У меня WinXP-SP3.

Хотелось бы - иметь 2 батника, на которые я сделаю 2 ярлыка в панели Быстрого запуска (для семейства, они-чайники мелкие):

1. Перевод компьютера в спящий режим (ждущий не нужен). Без вопросов.

2. Выключение компьютера. Без вопросов.

У меня - стоит True Launch Bar. Но после обновления винды перестал работать его удобный плагин TurnOff, подвешивает всю ось. А то и не было бы просьбы. Сам я - давно забыл как сделать такие батники, мгновенного действия.

Плиз - подскажите, где найти или - помогите.
Автор: sjsash
Дата сообщения: 28.05.2010 08:56
Помогите мне разобратся ктонибудь, плизззз !!!!
http://forum.ru-board.com/topic.cgi?forum=62&topic=19668&start=1440#9
Уже 2 недели, то мороз, то гоняют по веткам форума. Вот и к вам направили и тут молчат .
Автор: nNau
Дата сообщения: 28.05.2010 09:10
Akela50

Цитата:
1. Перевод компьютера в спящий режим (ждущий не нужен). Без вопросов.


Код:
rundll32.exe powrprof.dll,SetSuspendState Sleep
Автор: boy999
Дата сообщения: 28.05.2010 09:56

Цитата:
shutdown /?


Это на выключение, а егог и кнопкой можно вызвать.
Резет на батнике нужен.

Автор: koddy
Дата сообщения: 28.05.2010 10:02
nNau

Цитата:
Попробуйте в перечислении delims убрать точку, оставьте только двоеточие.
Или задайте tokens=2*

Попробовал.
В первом
\Documents and Settings\user>set GATE=. . . . . . . . . . . . : 1.8.16.172

C:\Documents and Settings\user>echo . . . . . . . . . . . . : 1.8.16.172
. . . . . . . . . . . . : 1.8.16.172

Во втором случае получаю
\Documents and Settings\user>set GATE=8.16.172

C:\Documents and Settings\user>echo 8.16.172
8.16.172
Автор: king_stiven
Дата сообщения: 28.05.2010 10:03
sjsash
В
Цитата:
В помощь системному администратору » Автоматизация администрирования

спрашивал? А по поводу неответа попробуй разбить свою задачу на кусочки и постепенно задавай их в удобоваримой форме в форме школьной задачи со своими готовыми скриптами, с описанием, где эти скрипты спотыкаются. Хороший пример:
http://forum.ru-board.com/topic.cgi?forum=62&topic=19668&start=1440#13
Мне на других форумах тоже не отвечают.
Автор: us0r
Дата сообщения: 28.05.2010 10:07

Цитата:
boy999

shutdown /f /r /t 0
Хлоп, и перезагрузко...

Добавлено:

Цитата:
koddy

Поищи на 63-67 страницах. Там у меня похожая задача.
Автор: Akela50
Дата сообщения: 28.05.2010 10:12
nNau
boy999

Угу, усёк... Токо, плиз, противоречие вижу... причем Reset?

Ребят, пооднозначнее б... Плиииз. Мне это надо для челов возраста 8 и 10 лет, чтоб комп зря не горел, пока мя с женой дома нет. А они токо кнопки нажимать уверенно умеют... Поэтому - еще @echooff надо воткнуть, это я сам.
Автор: us0r
Дата сообщения: 28.05.2010 10:19
Akela50
shutdown /f /r /t 0 - перезагрузка моментально и без вопросов.
shutdown /f /s /t 0 - вырубание компа моментально и без вопросов.
rundll.exe powrprof.dll,SetSuspendState Sleep - спящий режим.

Пример:

Код: @echo off
cls
REM Сейчас вырубим комп батнегом, не ожидая и не спрашивая подтверждений.
shutdown /f /s /t 0
Автор: Akela50
Дата сообщения: 28.05.2010 10:25
us0r

Упс!!! Вроде то - что надо. Грамотно. К вечеру вернусь домой и оформлю. Посмотрю, мож еще откомментят. Перезагруз не нужен, только Спячка и Выкл. По спячке - я так же и оформлю.

СПАСИБКИ!!!!
Автор: king_stiven
Дата сообщения: 28.05.2010 10:27
koddy
for /f "tokens=1* delims=:. " %%a in ('ipconfig ^| find /i "1.8"') do if not defined GATE set GATE=%%b

Что то с пробелом у тебя здесь
delims=:. "
или со кодировкой батника
Автор: mugil_cephalus
Дата сообщения: 28.05.2010 10:36
koddy

Код: chcp 1251>nul
for /f "tokens=3,4 delims=. " %%a in ('ipconfig ^|find "IP-адрес"') do set "var=%%~a.%%~b"
echo._%var%_
pause
Автор: us0r
Дата сообщения: 28.05.2010 11:07
Akela50

Цитата:
Упс!!!

Проверил?

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132

Предыдущая тема: XP не видит второй раздел на съемном USB-HDD


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.