Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Поиск файлов основываясь на днях недели / 2 сообщений из 2, страница 1 из 1
22.08.2016, 09:46
    #39295325
SAS2014
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов основываясь на днях недели
В каталоге 10 файлов с разными датами изменения начиная с понедельника и до пятницы включительно, а именно:

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
file_1.log  понедельник
backup1.dmp

file_2 .log вторник
backup2.dmp

file_3 .log среда
backup3.dmp

file_4 .log четверг
backup4.dmp

file_5 .log пятница
backup5.dmp



Нужно через скрипт PowerShell запущенный, например, в воскресенье отобрать именно пятничные файлы не трогая остальные. Эта задача, выполняемая, если я укажу в условии get-date (-3)
Но есть усложнение, дело в том, что скрипт будет запускаться в другие дни, например четверг, так вот при условии (-3) скрипт еще смотрит на среду и вторник, а это не нужно. А нужен только четверг.
Такой жесткий отбор по дням недели нужен для того, чтобы дальнейшие действия скрипта по поиску определенного текста в лог файлах, основывался на дне недели.
Набросал пример кода:

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
#########################################################
#SERV (test) бэкап с понедельника по пятницу 22:30#
#########################################################

$compareDate2 = (Get-Date).AddDays(-3)# за последние 3 суток
$SERV = "\\test\f$\Backups\serv\*"

#Печатает SID базы данных
Write-Host "SERV(test):"

#Поиск файлов по маске
$SERV_log = Get-ChildItem -path $TGBSERV -Include *.log | Where-Object { $_.LastWriteTime -ge $compareDate }
$SERV_dmp = Get-ChildItem -path $TGBSERV -Include *.dmp | Where-Object { $_.LastWriteTime -ge $compareDate }

if($SERV_log -ne $Null -and $SERV_dmp -ne $Null)
{
                           
                                #Поиск ошибок
                                $serv_check = Select-String "ORA-", "EXP-" $SERV_log
                                
                                 if($serv_check -ne $Null)
                               {
                                 write-host $text_error -ForegroundColor red
                               }
                                else { write-host $text_ok -ForegroundColor green } 
 
}
#Если файлы не найдены
else {
write-host $text_no -ForegroundColor red
}



Подскажите пожалуйста решение!
...
Рейтинг: 0 / 0
23.08.2016, 07:45
    #39295871
SAS2014
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов основываясь на днях недели
Думаю выше написанное немного не ясно, уточнил вопрос:

Как отобрать файлы измененные за прошлые сутки исключая для отбора выходные дни на скрипте Powershell 2.0
т.е. запускаю в понедельник, скрипт не смотрит на выходные дни, а сразу переходит на пятницу и думает что это прошлые сутки))
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Поиск файлов основываясь на днях недели / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]