フォルダ内に指定のファイルが存在するか確認
フォルダ内に指定のファイルが存在するか確認するプログラムを作成しました。以下のファイルが存在するか確認します。
ファイル名 | 格納フォルダ |
application_yyMMdd.txt (yyMMddは前日日付) | C:\logs |
security_yyMMdd.txt (yyMMddは前日日付) | C:\logs |
system_yyMMdd.txt (yyMMddは前日日付) | C:\logs |
以下プログラムソースです。
#--------------------------------------- # ログが存在するかチェック #--------------------------------------- set-PSDebug -strict # 前日日付の取得 $today = [DateTime] $yesterday = [DateTime] $today = get-Date $yesterday = $today.AddDays(-1) # ログ格納フォルダの取得 $log_folder_path = [string] $log_folder_path = "C:\logs" # system,application,securityでループ $type = [string] $log_name = [string] $name = [string] $flg = [Boolean] foreach ($type in "system","application","security"){ # ログ名作成 $log_name = $type + "_" + $yesterday.ToString("yyMMdd") + ".txt" # ログが存在するか確認 $flg = $false foreach ($name in get-childItem -path $log_folder_path){ if ([String]$name -eq $log_name) {$flg = $true} } # ログが存在しない場合は終了 if ( ! $flg) { throw "ログが存在しません" } } write-Host "完了しました" trap{ break }