1、 & base & comm,0,trueIf (.txt) Then判断是否有指定OU的txt文件Set file=( 打开文件Count = 0ErrorCount = 0disabledCount = 0 Until =-1 name = name 形如:cn=test123,ou=test,dc=abc,dc=comabgroup = Right(name,2) = 0If LCase(group) = ab Thenname = Left(name,Len(name)-3) nameSet UserObj = GetObject( name) If = 0 ThenIf = FALS
2、E ThenstrNewParentDN = ou=,ou=personnel,ou=ab,DC=abc,DC=comset objCont = GetObject( strNewParentDN) name,vbNullStringCount_dc = Count_dc + 1elseou=personel,ou=disabledAccounts,DC=abc,DC=comdisabledCount = disabledCount + 1End IfElseErrorCount = ErrorCount + 1cmd /c echo dc name &Else name = Left(nam
3、e,Len(name)-6)If = 0 ThenCount_dcits = Count_dcits + 1cmd /c echo dcits Loopcmd /c echo Count_dc= Count_dc &cmd /c echo Count_dcits= Count_dcits &cmd /c echo disabledCount= disabledCount &cmd /c echo ErrorCount= ErrorCount &操作完成*1.2 批量导出AD中指定OU的用户和安全组读取域下abOU下,personnelOU中所有OU中的用户和安全组结果保存到C: 用存放ou=p
4、ersonnel,ou=ab,dc=abc,dc=com下各OU的名称,1) = -1ou1 = ,ou=personnel,ou=ab,dc=abc,dc=comSet UserObj_ab = GetObject( ou1)For Each oUser in UserObj_ab读取到的当前用户的显示名称account = 用户的登录名disabled = 用户状态,True为禁用,False为启用dn = 用户LDAP路径 account & disabled & dc comm,0,true输出到指定文件夹Next2 文件相关2.1 解压文件到指定文件夹获取当前日期temp_day =
5、 day(date)temp_month = month(date)temp_year = year(date)If Len(temp_day) = 1 Then temp_day = 0 temp_dayIf Len(temp_month) = 1 Then temp_month = temp_monthtoday = temp_year & temp_month &msgbox today获取压缩包ftpRar = D:FTPuFolder = update temp_yearcount = 0Set wsShell= (Set oFolder = (ftpRar) Set oSubFol
6、ders = For Each File in rarName = rarPath = msgbox rarName msgbox rarPath If Left(rarName,8) = today Then count = count + 1解压缩 cmd = winrar x -t -o+ -p- rarPath & chr(32) & uFolder msgbox cmd cmd End If If count = 0 Then Msgbox 压缩包不存在!*2.2 增量备份用于文件更新前的增量备份。根据uFolder路径下的文件,对bakSource路径下的文件进行增量备份,并保存到
7、newPath路径下。增量备份count = 0 newPath = backup temp_year & todaySet WsShell = (Set oFolder = (uFolder) For Each Folder in oSubFolders FolderName = FolderPath = If Left(FolderName,8) = today Then If (newPath) Then Else Set newFolder = (newPath) End If Set sFolders = (FolderPath) Set sSubFolders = For Each
8、 sFolder in sSubFolders sFolderName = bakSource = sFolderName bakDestination = newPath & If (bakSource) Thencmd /c xcopy /y /e bakSource & bakDestination cmd,1,true Next For Each File in 网络IP共享文件夹 bakDestination = newPath Msgbox 已备份 count &个对象。备份完成!3 数据库相关3.1 批量执行SQL脚本数据库为SQL Server 2008/2012,其他版本的数
9、据库没有尝试过。批量执行指定路径(sFolder)下的sql脚本,提示执行结果。sqlcmd命令格式:sqlcmd -s 服务器IP -u 数据库用户名 -p 用户密码 -d 数据库名 -i sql脚本完全路径 -pSet ws=(sFolder = E:worksql #sql脚本存放路径dbServer = test-db #数据库服务器的计算机名/IP地址(计算机名需要考虑远程域名解析的问题)dbUser = db-user #访问数据库的用户名,域用户为“域用户名”dbPwd = user-pwd #用户密码db = test #库名set fs = CreateObject(set
10、oFolder = (sFolder) 获取文件夹set oSubFolders = 获取子目录集合set oFiles = 获取文件集合for each file in oFiles sExt = (file) 获取文件扩展名 sExt = LCase(sExt) 转换成小写 path = sFolder &获得文件名(含扩展名,不含路径)和扩展名cmd /c sqlcmd -S chr(34) & dbServer & -U dbUser & -P dbPwd & db & Path & -p Set objExecObject = (cmd) strText = msgbox strText操作完成!dbadminHerpPssw0rdherp3work更新herptestcmdb01123456cmdb
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1