|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] При копировании исключить файлы определенного типа |
|
[решено] При копировании исключить файлы определенного типа
|
Пользователь Сообщения: 74 |
Профиль | Отправить PM | Цитировать Доброго дня!
Казалось бы простой вопрос, но не могу найти решение: как исключить файлы определенного типа при копировании (например *.zip) ? |
|
Отправлено: 13:30, 11-06-2014 |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать support23,
Вы покажите код, которым Вы копируете файлы. |
Отправлено: 16:50, 11-06-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 74
|
Профиль | Отправить PM | Цитировать Копировать планировал через DirCopy, но у функции отсутствуют необходимый мне параметр
|
Отправлено: 13:56, 12-06-2014 | #3 |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать support23,
Получайте содержимое папок в массив (несколько вариантов решения), в цикле копируйте файлы (несколько вариантов решения), проверяя их на расширение. Все зависит от конкретной задачи. |
Отправлено: 15:16, 12-06-2014 | #4 |
Пользователь Сообщения: 74
|
Профиль | Отправить PM | Цитировать вот что получилось в итоге:
#NoTrayIcon #include <Array.au3> #Include <FileOperations.au3> $sPath = "E:\test\source" if Not FileExists($sPath) then MsgBox(64, "Ошибка", "Не найден каталог: " & @CRLF & $sPath) Exit EndIf $dPath = "C:\test\destination" if Not FileExists($dPath) then DirCreate($dPath) EndIf $Level = 5 ; уровень вложенности каталогов $Exclude = "*.zip|*.7z" ; исключить файлы с расширением zip и 7z $a1FileList = _FO_FileSearch($sPath, $Exclude, False, 0, 1, 1, 0) For $i=1 To $a1FileList[0] FileCopy($a1FileList[$i], $dPath) Next $aFolderList = _FO_FolderSearch($sPath, "*", True, $Level, 0, 1, 0) For $i=1 To $aFolderList[0] DirCreate($dPath & "\" & $aFolderList[$i]) $a2FileList = _FO_FileSearch($sPath & "\" & $aFolderList[$i], $Exclude, False, 0, 1, 1, 0) For $j=1 To $a2FileList[0] FileCopy($a2FileList[$j], $dPath & "\" & $aFolderList[$i]) Next Next Exit |
|
Отправлено: 18:47, 14-06-2014 | #5 |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать support23,
Если объем копирования большой, то посмотрите еще здесь: Копируем файлы без "тормозов" |
Отправлено: 20:22, 14-06-2014 | #6 |
Пользователь Сообщения: 74
|
Профиль | Отправить PM | Цитировать спасибо, большой объем как раз я уже и исключил (исключив архивы zip и 7z), вопрос можно считать закрытым.
|
Отправлено: 12:32, 15-06-2014 | #7 |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать support23,
Еще можно проверять наличие в папке файлов с определенным расширением (если, конечно, в этой папке нет вложенных папок). Local $sDir = @ScriptDir & '\Google_Translator', $sExclude = '*.zip|*.7z', $aExclude, $fExist $aExclude = StringSplit($sExclude, '|') ;~ ... $fExist = False For $i = 1 To $aExclude[0] If FileExists($sDir & '\' & $aExclude[$i]) Then $fExist = True ExitLoop EndIf Next ConsoleWrite($sExclude & ' -> ' & $fExist & @LF) If $fExist Then ;~ ... Ваш вариант Else ;~ DirCopy() или по другому EndIf |
Отправлено: 13:18, 15-06-2014 | #8 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - получить список папок, имеющих внутри файлы определенного типа | tempik | Скриптовые языки администрирования Windows | 5 | 05-03-2013 19:27 | |
CMD/BAT - [решено] Выбор определенного типа файлов при копировании | Aleksander.Ruban@fb | Скриптовые языки администрирования Windows | 4 | 25-08-2012 10:21 | |
CMD/BAT - [решено] Удаление каталогов не содержащих файлы определенного типа | m3nthal | Скриптовые языки администрирования Windows | 2 | 15-01-2012 18:26 | |
Как в домене вин 2003 запретить пользователям сохранять файлы определенного типа | Russo | Microsoft Windows NT/2000/2003 | 5 | 12-02-2009 10:25 | |
как изменить права на файлы только определенного типа | Guest | Microsoft Windows NT/2000/2003 | 12 | 23-03-2004 10:09 |
|