Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Доработать скрипт копирования файлов изображений

Ответить
Настройки темы
PowerShell - Доработать скрипт копирования файлов изображений

Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Добрый день
Прошу помощи в доработке скрипта. Нужно добавить возможность, чтобы при копировании файлов изображений, они складывались в отдельные папки с датой. Например файл имеет имя 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
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


да, все верно

Если я правильно понял, то при наличии одноименного файла в целевом каталоге, требуется проверка на "свежесть" файла? Это в моем скрипте не реализовано.
Если это требуется, то можно реализовать, но в этой проверке будут сравниваться только LastWriteTime, ибо проверка на "свежесть" наиболее корректна будет именно по этой дате...

Да, в этом скрипте есть проверка на свежесть. Если не затруднит. доработайте ваш скрипт с этим условием

Отправлено: 13:03, 21-01-2019 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1171
Благодарности: 487

Профиль | Отправить PM | Цитировать


Цитата mihailov_den@vk:
Да, в этом скрипте есть проверка на свежесть. Если не затруднит. доработайте ваш скрипт с этим условием »
Fixed

-------
scio me nihil scire. Ѫ


Отправлено: 13:16, 21-01-2019 | #12


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Огромное спасибо

Отправлено: 14:08, 21-01-2019 | #13



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Доработать скрипт копирования файлов изображений

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - [решено] Скрипт для копирования файлов/папок с заменой 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




 
Переход