windows中批处理文件--收集服务器日志和上传日志至文件服务器
来源:互联网 发布:multisim连线优化 编辑:程序博客网 时间:2024/05/20 21:21
脚本实现的功能:收集远程服务器日志并上传内网共享目录
windows批处理文件是以“.bat”结尾的文本文件,可以先创建记事本,然后再重命名为“xxx.bat”,即可双击运行,系统会调用cmd.exe来运行该文件
这是代码详解,如想复制,最下面有源码:
echo –[message]显示信息
echo off
rem 该命令只是起一个注释的作用
rem 关闭回显,如果是echo off则关闭回显,这个回显是什么意思呢?其实就是显示命令本身
rem echo off就是关闭命令本身的显示,一般调试的时候才会使用echo on
rem 获取当前时间,比较复杂,就不分析了。格式为201706252136
set date=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%
rem %date%和%time%是系统内置的日期变量和时间变量
rem 复制出来的文件夹名字后缀
set Suffix=log
rem 设置IP地址用set ipx=xxx.xxx.xxx.xxx
rem 脚本支持系统盘是C盘的,写死在里面,如果不是C盘的,需要自己下面改一下参数
set ip1=192.168.XX.XX
rem ping远程IP一次,如果ping的通,拷贝日志,否则不拷贝
rem 然后写一个call(调用另一个其处理程序,并且不终止父批处理程序)调用CopyLogs 把IP地址以参数形式传入
ping -n 1 %ip1% && call :CopyLogs %ip1%
rem cmd 返回并将等待下一条命令
goto:eof
rem 拷贝日志函数块
:CopyLogs
set ipaddr=%1
set num=%ipaddr:.=_%
rem 创建远程管道链接
net use \%ipaddr% password /user:admin
echo ——-正在导出%ipaddr%的系统DUMP(蓝屏文件)——-
echo ——-这里使用了if else语句实现
if not exist \%ipaddr%\c
set “systemLogDir=\%ipaddr%\c$\Windows\System32\winevt\Logs”
echo ——-正在导出%ipaddr%的系统日志——-
if not exist %systemLogDir%\App*.Evt* (@echo application log is not exist) else (xcopy %systemLogDir%\App*.Evt* “%cd%\%date%-%Suffix%\IP_%num%\Sys_Log\”)
echo ——-正在上传%ipaddr%的文本系统日志——-
echo ——-xcopy,相比于copy更高级一点,复制文件夹
xcopy “%cd%\%date%-%Suffix%” \192.168.xx.xx+目录 /e /y /k
rem 删除远程管道链接
net use \%ipaddr% /d /y
goto:eof
如下是源代码:
echo --[message]显示信息echo offset date=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%set Suffix=logset ip1=192.168.xx.xxping -n 1 %ip1% && call :CopyLogs %ip1%goto:eof:CopyLogsset ipaddr=%1set num=%ipaddr:.=_%rem 创建远程管道链接net use \\%ipaddr% password /user:adminif not exist \\%ipaddr%\c$\Windows\*.dmp (@echo 不存在目录) else (xcopy \\%ipaddr%\c$\Windows\*.dmp "%cd%\日志目录\%date%-%Suffix%\IP_%num%\Dump\")set "systemLogDir=\\%ipaddr%\c$\Windows\System32\winevt\Logs"if not exist %systemLogDir%\App*.Evt* (@echo application log is not exist) else (xcopy %systemLogDir%\App*.Evt* "%cd%\%date%-%Suffix%\IP_%num%\Sys_Log\")xcopy "%cd%\%date%-%Suffix%" \\192.168.xx.xx+目录 /e /y /krem 删除远程管道链接net use \\%ipaddr% /d /y
- windows中批处理文件--收集服务器日志和上传日志至文件服务器
- android 收集错误日志 上传服务器
- 收集windows日志到日志服务器的方法
- python 日志收集服务器
- ios Crash闪退日志获取和上传至服务器
- iOS Crash闪退日志获取和上传至服务器
- ios Crash闪退日志获取和上传至服务器
- ios Crash闪退日志获取和上传至服务器
- Linux服务器性能日志收集和分析脚本
- 实时日志收集方法、系统和应用服务器集群
- 用Syslog Server收集UNIX和Windows日志
- 使用logstash配置nginx和tomcat日志统一收集到一台日志服务器
- 日志应用规范(收集中)
- android app崩溃日志收集以及上传
- 错误收集(本地Log日志)错误上传
- android--app崩溃日志收集以及上传
- android app崩溃日志收集以及上传
- android 崩溃日志收集与上传
- 软件开发工具PowerBuildler实现多表联查
- 鸟哥的Linux基础篇整理---5
- Elasticsearch5.0 安装问题集锦
- DD_系统构建-MBR(2) 流程
- Python数据分析基础(六)——可视化
- windows中批处理文件--收集服务器日志和上传日志至文件服务器
- C#——面向对象(二)
- 鸟哥的Linux基础篇整理---6
- C++_引用
- 斐波那契数列:兔子问题
- 系统架构设计师视频教程
- Java Word Xml 03/07
- Python数据分析基础(七)——数据聚合与分组
- c语言编程 把十进制转换为十六进制