|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Проверка размера файла |
|
CMD/BAT - [решено] Проверка размера файла
|
Пользователь Сообщения: 88 |
Уважаемые знатоки!
Помогите написать батник по следующим условиям: 1.В папке по адресу C:\Doc\ найти файл «Fora.vek», определить его размер, если он составляет 95800 байт, то переименовать его в «2Fora.vek», а файл «1Fora.vek» из этой же папки переименовать в «Fora.vek», если же его размер 805132 байта, то запускаем программу «Zorro.exe» из этой же директории. 2.Через 50 секунд переименовать файл «Fora.vek» в «1Fora.vek», а файл «2Fora.vek» в «Fora.vek». 3.После завершения программы «Zorro.exe» переименовать файл «Fora.vek» в «2Fora.vek», а файл «1Fora.vek» в «Fora.vek». Запутано, конечно.. ![]() |
|
Отправлено: 00:04, 18-08-2011 |
Старожил Сообщения: 175
|
Профиль | Отправить PM | Цитировать Если я правильно логику понял:
@echo off set "d=C:\Doc\" set "f=Fora.vek" set "f1=1Fora.vek" set "app=Zorro.exe" pushd "%d%" & call:size "%f%" :size if %~z1 equ 95800 ( ren %1 "2%~1" ren "%f1%" %1 ping -n 51 127.0.0.1>nul ren %1 "%f1%" ren "2%~1" %1 exit ) else ( if %~z1 equ 805132 (start /wait "" %app% & ren %1 "2%~1" & ren "%f1%" %1) exit ) |
Последний раз редактировалось SendMessage, 18-08-2011 в 01:58. Причина: поправил скрипт Отправлено: 01:51, 18-08-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 88
|
Профиль | Отправить PM | Цитировать SendMessage,
Спасибо огромное, все получается, а возможно ли такое уточнение: 1.В папке по адресу C:\Doc\ найти файл «Fora.vek», определить его размер, если он составляет 95800 байт, то переименовать его в «2Fora.vek», а файл «1Fora.vek» из этой же папки переименовать в «Fora.vek», после чего запустить программу «Zorro.exe» 2.Через 50 секунд переименовать файл «Fora.vek» в «1Fora.vek», а файл «2Fora.vek» в «Fora.vek». 3.После завершения программы «Zorro.exe» переименовать файл «Fora.vek» в «2Fora.vek», а файл «1Fora.vek» в «Fora.vek». 4.Если же его размер 805132 байта, то запускаем программу «Zorro.exe» из этой же директории. 5.Через 50 секунд переименовать файл «Fora.vek» в «1Fora.vek», а файл «2Fora.vek» в «Fora.vek». 6.После завершения программы «Zorro.exe» переименовать файл «Fora.vek» в «2Fora.vek», а файл «1Fora.vek» в «Fora.vek». Здесь наверное сложности с 3 и 6 пунктами.. ![]() |
Отправлено: 08:48, 18-08-2011 | #3 |
Старожил Сообщения: 175
|
Профиль | Отправить PM | Цитировать 4zz, сложность не столько с 3 и 6 пунктами, сколько с круговертью файлов.
![]() Попробуйте так: @echo off set "d=C:\Doc\" set "f=Fora.vek" set "f1=1Fora.vek" set "f2=2Fora.vek" set "app=Zorro.exe" set n=0 pushd "%d%" & call:size "%f%" :size if %~z1 equ 95800 ( (copy %1 "%f2%" /y & copy "%f1%" %1 /y & del "%f1%")>nul start "" "%app%" goto loop ) else ( if %~z1 equ 805132 ( start "" "%app%" goto loop ) ) exit :loop ( ping -n 2 127.0.0.1 & set /a n+=1 if %n% equ 50 (copy %1 "%f1%" /y & copy "%f2%" %1 /y & del "%f2%") tasklist | find /i "%app%" || (copy %1 "%f2%" /y & copy "%f1%" %1 /y & del "%f1%" & exit) )>nul goto loop |
Последний раз редактировалось SendMessage, 18-08-2011 в 18:17. Причина: добавил пропущенные кавычки Отправлено: 15:14, 18-08-2011 | #4 |
Пользователь Сообщения: 88
|
Профиль | Отправить PM | Цитировать SendMessage,
Спасибо!!! А можно коментарии к строкам? ![]() |
|
Последний раз редактировалось 4zz, 18-08-2011 в 20:26. Отправлено: 17:38, 18-08-2011 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBS/WSH/JS - [решено] Изменение размера файла подкачки | polecat | Скриптовые языки администрирования Windows | 6 | 25-12-2010 06:08 | |
CMD/BAT - Скачивание файла и проверка на отличия от файла на сервере. | maslovt | Скриптовые языки администрирования Windows | 2 | 08-05-2010 19:54 | |
Ограничение размера файла в папке | Delirium | Microsoft Windows NT/2000/2003 | 4 | 28-10-2009 12:26 | |
mkv+ogg=превышение размера файла. | Danilo | Видео и аудио: обработка и кодирование | 3 | 20-02-2006 00:21 | |
Уменьшение размера файла *.avi | Dimoz33 | Видео и аудио: обработка и кодирование | 1 | 14-01-2005 01:02 |
|