powerShell写日志功能
Function Write-Log {
??? [cmdletbinding()]
??? Param(
??? [Parameter(Position=0)]
??? [ValidateNotNullOrEmpty()]
??? [string]$Message,
??? [string]$Path= "$env:SHELL_LOCATION" + "\log\shell.log",
??? [string]$level = "info"
??? )
?
?$LogFile = $Path
?$setLevel = 'debug';
?
?switch -wildcard ($setLevel)
?{
?'info'{
??switch -wildcard ($level) {
???'info' {Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append?}
???'warning'{Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append?}
???'error' {Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append?}
???'debug' {}
???default {}
??}
?}
?'debug' {
??switch -wildcard ($level) {
???'info' {Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append?}
???'warning'{Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append }
???'error' {Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append }
???'debug' {Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append }
???default {}
??}
?}
?
?'warning' {
??switch -wildcard ($level) {
???'info' {}
???'warning' {Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append }
???'error' {Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append }
???'debug' {}
???default {}
??}
?}
?'error' {
??switch ($level) {
???'info' {}
???'warning' {}
???'error' {Write-Output "[$level] : $(Get-Date) ---- $Message" | Out-File -FilePath $LogFile -Append }
???'debug' {}
???default {}
??}
?}
?}
}?
?