• Администрация SafeZone приветствует вас на нашем форуме!
    Если вы больше не желаете видеть рекламу при просмотре тем и сообщений - то достаточно просто зарегистрироваться. Для зарегистрированных пользователей реклама не отображается.

[CMD] Проверка наличия файлов по условию

sergio83

Новый пользователь
Сообщения
4
Симпатии
0
#1
1. При запуске задачи идет проверка наличия файлов в папке Folder1 с расширением .dbf. 2. Если файлы не найдены – завершаем задачу. 3. Если в папке найдены файлы – проверям, нет ли файлов с таким же расширением в папке Folder2. 4. Если файлы найдены (хотя бы 1) – завершаем задачу. 5. Если в Folder2 нет файлов – перемещаем файлы из папки Folder1 в папку Folder2 и завершаем задачу.
 

Кирилл

Команда форума
Администратор
Сообщения
13,352
Симпатии
5,887
#2
Можно примерно в таком формате?
Это образец
Код:
@ECHO Off

IF EXIST "folder\%file%"  call: search  else  exit /b

: search
IF EXIST "folder2\%file%"  exit /b else  copy ....
exit /b
 
Последнее редактирование:

sergio83

Новый пользователь
Сообщения
4
Симпатии
0
#4
немного поправил скрипт, но условие не отрабатывает фаил из папки в папку не копируется
@ECHO Off

IF EXIST E:\Folder\*.dbf call: search else exit /b

: search
IF EXIST E:\Folder2\*.dbf exit /b else copy E:\Folder1\*.dbf E:\Folder2
 

Кирилл

Команда форума
Администратор
Сообщения
13,352
Симпатии
5,887
#5
Подумайте над тем, что будет когда потребуется решение о перезаписи старого файла?
То есть допишите соответствующий аргумент команды copy
Bash:
@ECHO off
title Copy File
  set patch1=patch1
  set patch2=patch2

    IF EXIST %patch1%\*.dbf ( call :search & exit /b ) else ( exit /b )

:search
   IF EXIST %patch2%\*.dbf ( exit /b) else (copy %patch1%\*.dbf %patch2% )

exit /b
 
Последнее редактирование:

sergio83

Новый пользователь
Сообщения
4
Симпатии
0
#6
Подумайте над тем, что будет когда потребуется решение о перезаписи старого файла?
То есть допишите соответствующий аргумент команды copy
Bash:
@ECHO off
title Copy File
  set patch1=patch1
  set patch2=patch2

    IF EXIST %patch1%\*.dbf ( call :search & exit /b ) else ( exit /b )

:search
   IF EXIST %patch2%\*.dbf ( exit /b) else (copy %patch1%\*.dbf %patch2% )

exit /b
Еще раз огромное спасибо за помощь.
 
Сверху Снизу