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 {}
}
}
}
}
分享到:
相关推荐
2. **PowerShell在实际应用中的操作**:这一章节可能会深入到PowerShell在系统管理中的具体应用,如自动化任务、日志分析、性能监控等。 3. **PowerShell的函数、安全和错误调试**:这部分可能讲解了如何定义和使用...
### Windows PowerShell应用手册知识点概述 #### 一、引言 本书由Windows PowerShell团队开发人员Lee Holmes撰写,...通过阅读本书,读者将能够迅速掌握PowerShell的强大功能,并将其应用于日常工作中的各种挑战之中。
论坛里面有人询问如何使用powershell脚本查询文件修改的审计日志,豆子服务器没开这个功能,不过尝试写了个类似的脚本可以查询日志,并输出对应的xml内容。 基本方法是get-winevent, 可以指定对应的eventid,获取...
本资料包包含了一些经典批处理代码示例,这些代码能够帮助用户在Windows环境下实现多种功能。 1. **批处理基础** - 批处理文件通常使用`.bat`或`.cmd`扩展名。 - 批处理文件中的每一行代表一个命令,可以是内置的...
- 异步编程:利用PowerShell的异步功能进行并发任务处理。 - 高级脚本技巧:涵盖脚本模块、脚本块、别名函数等高级技术。 6. **PowerShell在企业环境中的应用** - 自动化部署:使用PowerShell进行软件部署和更新...
标题“PowerShell_Restore-BackupDatabaseUsingBakFiles_sqlserver_windows”所指向的脚本正是这样的一个实用工具,它利用PowerShell命令来实现SQL Server数据库的备份与恢复功能。 首先,让我们详细了解一下SQL ...
3. **日志记录**:添加日志记录功能,以便跟踪同步过程中的详细信息,如哪些文件被复制、哪些文件被跳过等。 4. **用户交互**:提供命令行参数,允许用户自定义源文件夹和目标文件夹等选项。 5. **文件过滤**:添加...
免责声明所有内容仅面向信息研究、学习交流等,正常合规化...点击详情Windows桌面技术基线检查首先,确保你的系统已开启 PowerShell打开PowerShell功能Set-ExecutionPolicy RemoteSigned关闭PowerShell功能Set-Executio
6. **日志记录**:为了跟踪脚本的执行情况,可以考虑添加日志功能,记录每个用户的创建状态以及任何遇到的错误。 这个脚本的使用不仅可以大大提高工作效率,还能减少人为错误。不过,值得注意的是,由于涉及到敏感...
- **scripts**: 子目录,包含各种特定功能的PowerShell脚本。 - **modules**: 自定义模块目录,用于存放自定义Cmdlet和辅助函数。 - **resources**: 存放脚本运行所需的文件,如安装包、证书、配置模板等。 编写...
因此,在脚本中的任何位置,您都需要在磁盘上写日志或/和在屏幕上显示信息,所有您需要做的就是随同消息一起调用Write-EZLog 。 也就是说,您还可以使用以下实用程序命令: ConvertFrom-EZLog :将日志文件转换为...
在“powershellFunctions”这个主题中,我们主要探讨PowerShell中的各种功能和用法。 首先,PowerShell的核心是其命令行环境,称为PowerShell会话或“shell”。在这个环境中,用户可以通过命令行执行操作,类似于...
为了将这两个功能整合,你可以创建一个包含上述PowerShell批量修改XML文件和批处理启动进程的综合脚本。首先,运行修改XML文件的PowerShell命令,然后执行批量启动进程的批处理脚本。这样,整个流程就可以在一次操作...
除了基础功能,DefiantCode.Components可能还包括一些特定场景下的解决方案,如日志记录组件,它能帮助开发者记录应用程序运行时的详细信息,便于调试和问题追踪;或者权限管理组件,简化用户认证和授权的流程,确保...
【Word_Unscramble: HackThis...在实践中,你可能还会接触到更多的PowerShell特性,例如管道(`|`)和对象流,以及如何使用PowerShell模块来扩展功能。通过不断实践和挑战,你将逐步成为一个熟练的PowerShell程序员。
- **功能介绍**:此命令用于打开事件查看器,用户可以在此查看系统日志和其他类型的日志。 - **应用场景**:当需要监控系统活动或诊断故障时。 #### 28. explorer:打开资源管理器 - **功能介绍**:用于打开Windows...
如果源代码可用,用户或开发者可以查看PowerShell脚本是如何实现上述功能的,甚至可以根据自己的需求进行定制。 总的来说,“About_my_device”是一个利用PowerShell技术为用户提供设备信息查询和快捷操作的实用...
在Windows操作系统中,控制台(Console)是程序员和系统管理员常用的交互界面,用于运行命令行应用程序,如cmd.exe或PowerShell。"cpp-Windows控制台监控器"项目旨在创建一个工具,可以监视并管理Windows控制台窗口...
8. **使用批处理框架**:一些高级批处理工具如Apache Ant、Windows PowerShell等提供了更强大的功能和更好的性能,可以考虑替换传统的CMD批处理。 压缩包中的"83条注册表优化.exe"可能是一个程序,用于批量修改...
1. **使用Windows PowerShell**: PowerShell是Windows的现代命令行环境,虽然它不直接提供`grep`,但可以通过管道和`Select-String` cmdlet实现相似功能。例如,`Get-Content log.txt | Select-String "error"`将...