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

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

Ответить
Настройки темы
PowerShell - [решено] Копирование файлов за определенную дату

Старожил


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

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


Добрый день,

Необходимо скопировать файлы из папки в папку созданные в определенный день
При помощи команды Get-ChildItem | Get-Member нашел свойство в котором можно найти дату создания файла, также нашел, как из даты выдрать только день
(Get-ChilItem - path "c:\folder\file.txt").CreationTime.Day
На выходе получаем день создания - 21, 22, и т.д.
Не могу отфильтровать файлы в папке с только таким значением - например 22, т.е. за 22 число файлы скопировать.

Никак шарик за ролик не завернется,

Отправлено: 16:38, 15-12-2010

 

Старожил


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

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


Ура, шарик за ролик закатился....
Get-ChildItem | Where-Object {$_.CreationTime.Day -like "23"}

Отправлено: 16:46, 15-12-2010 | #2



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

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


Старожил


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

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


Наваял вот такой скрипт, можно ли его оптимизировать по скорости работы.
Скажем я пытался в команде Get-ChilItem в -Filter запихнуть два значения: *.log, *.ini. Но два он не обрабатывает или я не правильно, что-то написал. Пришлось запихнуть данные в -include ( он субъективно, медленнее работает)
Можно ли не создавать переменную $MM? Там текущий месяц. Если просто подоставить в:
Код: Выделить весь код
-and $_.CreationTime.Month -like "(get-date).Month"}
то скрипт ничего не обрабатывает, как-будто в этом месяце не было записей...
Сам скрипт:
Код: Выделить весь код
$AddDirectory = Read-Host "Please write name Directory"
New-item "$AddDirectory" -ItemType Directory
Write-Host "$addDirectory was create in current directory"
$MM = (get-date).Month
$AddDay = Read-Host "Please write day then log file was create"
$AddPCName = Read-Host "Please write PC name."
$ArrayPC = $addPCName -split "[,]"
foreach ($1 in $ArrayPC) {
 IF (Test-connection -Quiet -Delay 1 -Count 2 -ErrorAction SilentlyContinue  -ComputerName $1)
 {
 $file = Get-ChildItem \\$1\C$\folder\* -Include *.log, *.ini | '
Where-Object {$_.CreationTime.Day -like "$AddDay" '
-and $_.CreationTime.Month -like "$MM"}
 New-item -Path $AddDirectory -Name $1 -ItemType Directory
 Copy-Item $file -Destination $AddDirectory\$1
 "Компьютер $1 включен. Файлы скопированы." }
 Else {"Компьютер $1 выключен.Создана запись в файл ShutDownPC."
 Add-Content -Path "$AddDirectory\ShutDownPC.txt" -Value "Компьютер $1 выключен"
 }}

Отправлено: 18:32, 15-12-2010 | #3



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - копирование файлов за текущую дату с сервера на сервер 6a6yko Скриптовые языки администрирования Windows 10 21-06-2011 13:00
CMD/BAT - Копирование файлов LightZone Скриптовые языки администрирования Windows 4 13-10-2010 13:33
CMD/BAT - [решено] Перемещение файлов, содержащих дату в названии. Майклс Скриптовые языки администрирования Windows 4 27-07-2010 15:34
Доступ - Запрет на копирование файлов shponder Microsoft Windows 2000/XP 6 04-03-2009 08:40
Копирование файлов с CD ProkVS Автоматическая установка Windows 2000/XP/2003 18 31-03-2007 06:42




 
Переход