|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Доработать скрипт копирования файлов изображений |
|
PowerShell - Доработать скрипт копирования файлов изображений
|
Новый участник Сообщения: 7 |
Добрый день
Прошу помощи в доработке скрипта. Нужно добавить возможность, чтобы при копировании файлов изображений, они складывались в отдельные папки с датой. Например файл имеет имя 2019-01-15_151941, нужно создать папку 2019.01.15 и положить туда этот файл. Сейчас скрипт копирует файлы в одну кучу. Текст скрипта ниже. Заранее спасибо всем Set-ExecutionPolicy UnRestricted CLS $Dest1 = "C:\foto1" $Dest2 = "C:\foto2" #Write-Host "!!!!____!!!! Приступаем к проверке папки 1" ForEach ($File in (Get-ChildItem $Dest1 -Recurse)) { # Write-host "Обрабатываю" $File.fullname $File.LastWriteTime $Dest1ToDest2= $File.FullName.Replace($Dest1, $Dest2) if ((Test-Path -path $Dest1ToDest2) -ne $True) { # Write-host "_______________Файла в Папке 2 не существует. Нужно скопировать из Папки 1" Copy-Item $File.FullName $Dest1ToDest2 -Force } Else { if ((Dir $File.FullName).LastWriteTime -gt (Dir $Dest1ToDest2).LastWriteTime) { # Write-Host "_______________Файл в папке 1 новее, чем в папке 2. Нужно скопировать" Copy-Item $File.FullName $Dest1ToDest2 -Force } Else { # Write-Host "_______________Файлы одинаковые. Обновление не требуется" } } } #Write-Host "!!!!____!!!! Приступаем к проверке папки 2" ForEach ($File in (Get-ChildItem $Dest2 -Recurse)) { # Write-host "Обрабатываю" $File.fullname $File.LastWriteTime $Dest2ToDest1= $File.FullName.Replace($Dest2, $Dest1) if ((Test-Path -path $Dest2ToDest1) -ne $True) { # Write-Host "_______________Файл не существует в Папке1. Нужно удалить из папки 2" Remove-Item $File.FullName -Force } else { # Write-Host "_______________Файл существует в Папке1." } } Set-ExecutionPolicy Restricted |
|
Отправлено: 12:27, 18-01-2019 |
Новый участник Сообщения: 7
|
Профиль | Сайт | Отправить PM | Цитировать да, все верно
Если я правильно понял, то при наличии одноименного файла в целевом каталоге, требуется проверка на "свежесть" файла? Это в моем скрипте не реализовано. Если это требуется, то можно реализовать, но в этой проверке будут сравниваться только LastWriteTime, ибо проверка на "свежесть" наиболее корректна будет именно по этой дате... Да, в этом скрипте есть проверка на свежесть. Если не затруднит. доработайте ваш скрипт с этим условием |
Отправлено: 13:03, 21-01-2019 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Crazy Сообщения: 1218
|
Профиль | Отправить PM | Цитировать Цитата mihailov_den@vk:
|
|
------- Отправлено: 13:16, 21-01-2019 | #12 |
Новый участник Сообщения: 7
|
Профиль | Сайт | Отправить PM | Цитировать Огромное спасибо
|
Отправлено: 14:08, 21-01-2019 | #13 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - [решено] Скрипт для копирования файлов/папок с заменой | darkAge | Скриптовые языки администрирования Windows | 19 | 01-07-2013 18:06 | |
CMD/BAT - bat-скрипт для массового копирования файлов | akt | Скриптовые языки администрирования Windows | 3 | 02-05-2013 17:26 | |
CMD/BAT - Скрипт копирования файлов и папок в сети в дерикторию пользователей | DNKolian | Скриптовые языки администрирования Windows | 2 | 18-02-2013 10:52 | |
CMD/BAT - [решено] Скрипт сортировки и копирования файлов по маске | Daemonstar | Скриптовые языки администрирования Windows | 2 | 25-09-2010 15:47 | |
Скрипт для копирования файлов с 1 сервера на несколько | andro_id | Программирование в *nix | 2 | 04-09-2008 11:48 |
|