<# .SYNOPSIS 概要を記述 .DESCRIPTION 説明を記述 .LINK http://www. .NOTES メモのテスト .EXAMPLE 例を記述 #> [CmdLetBinding()] param ( ) begin { # ***** 環境フォルダ設定 $HSC_HOME = Convert-Path -Path (Join-Path -Path (Split-Path -Path $Script:myInvocation.MyCommand.Path -Parent) -ChildPath ..\) # スクリプトの一つ上のフォルダーをHOMEに設定 $HSC_BIN = Split-Path -Path $Script:myInvocation.MyCommand.Path -Parent # スクリプトの存在するフォルダーをBINに設定 $HSC_ETC = Join-Path -Path $HSC_HOME -ChildPath \etc -Resolve # フォルダの存在チェックをしたくない場合は、-Resolveを外す $HSC_LIB = Join-Path -Path $HSC_HOME -ChildPath \lib -Resolve # フォルダの存在チェックをしたくない場合は、-Resolveを外す $HSC_TMP = Join-Path -Path $HSC_HOME -ChildPath \tmp -Resolve # フォルダの存在チェックをしたくない場合は、-Resolveを外す $HSC_LOG = Join-Path -Path $HSC_HOME -ChildPath \log -Resolve # フォルダの存在チェックをしたくない場合は、-Resolveを外す $HSC_VAR = Join-Path -Path $HSC_HOME -ChildPath \var -Resolve # フォルダの存在チェックをしたくない場合は、-Resolveを外す $HSC_EPPlus = Join-Path -Path $HSC_LIB -ChildPath \EPPlus.dll # 共通関数呼出 .$HSC_BIN\HSC-SharedFunction.ps1 # パスワードファイル取得 $HSC_CredentialFile = 'Hostname-Username.cred' # Transcriptの発行 $HSC_DetailLogfile = Join-Path -Path $HSC_LOG -ChildPath ($MyInvocation.MyCommand.Name + '-Detail_' + (Get-Date -Format 'yyyyMMdd') + '.log') Start-transcript -Path $HSC_DetailLogfile -Append # ***** パスワード取得 if (Test-Path -Path (Join-Path -Path $HSC_ETC -ChildPath $HSC_CredentialFile)) { # ***** 認証ファイルあり $HSC_SecurePassword = Get-Content -Path $HSC_CredentialFile | ConvertTo-SecureString $HSC_Credential = New-Object System.Management.Automation.PSCredential "root", $HSC_SecurePassword $HSC_PlainPassword = $HSC_Credential.GetNetworkCredential() } else { # ***** 認証ファイルなし <# * TODO: 認証ファイルがない場合の処理を追加 #> HSC-Write-Log -LogPrefix $MyInvocation.MyCommand.Name -LogPath $HSC_LOG -LogMessage ('認証ファイル[ ' + (Join-Path -Path $HSC_ETC -ChildPath $HSC_CredentialFile) + ' ]が見つかりません。') HSC-Write-Log -LogPrefix $MyInvocation.MyCommand.Name -LogPath $HSC_LOG -LogMessage ('次のコマンドを発行して、認証ファイルを作成する必要があります。') HSC-Write-Log -LogPrefix $MyInvocation.MyCommand.Name -LogPath $HSC_LOG -LogMessage (' $Credfile = Get-Credential') HSC-Write-Log -LogPrefix $MyInvocation.MyCommand.Name -LogPath $HSC_LOG -LogMessage (' $Credfile.Password | ConvertFrom-SecureString | Set-Content "認証ファイル保存フォルダ\認証ファイル名.cred"') } } process { <# ***************************************************************************************** * ここからメイン ***************************************************************************************** #> } end { # Transcriptの停止 Stop-Transcript }