2013-10-17 45 views
0

我是脚本编写新手,我在脚本下面写了多个计算机上创建文件夹,我需要创建显示任务成功和失败状态的日志文件。 有人可以帮助我。启用日志脚本

脚本:

Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objFile = objFSO.OpenTextFile("C:\CL_Repair\Computers.txt") 

Do Until objFile.AtEndOfStream 
strComputer = objFile.ReadLine 

Set objWMIService = GetObject _ 
    ("winmgmts:\\" & strComputer & "\root\cimv2:Win32_Process") 
    errReturn = objWMIService.Create _ 
    ("cmd.exe /c md c:\CL_Repair", Null, Null, intProcessID) 

Loop 

MsgBox("Folder = CL_Repair Created on Computers") 

回答

0

我认为这是你在找什么..我与比尔·斯图尔特在很多年前曾在一些脚本项目,他是一个可靠的资源..

http://social.technet.microsoft.com/Forums/windows/en-US/52873f35-5d55-498c-949e-da8ceb1df980/vbscript-write-error-to-log-file通知

两个项目:

On Error Resume Next 

是一行你需要添加到你的VBScript。

设置一个批处理文件来运行:

@echo off 
ECHO %COMPUTERNAME% >> C:\Scripts\errors.txt 
cscript C:\Scripts\myScript.vbs 2>> C:\Scripts\errors.txt 

现在,这应该陷阱问题,看到和应该记录为您服务。

好了..你问到有一个列表(文本)服务器列表..尝试是这样的..你真的不需要VBScript来做到这一点..

:: http://www.robvanderwoude.com/files/servers_nt.txt 
:: Check all servers in the list 
FOR /F "tokens=*" %%A IN ('TYPE servers.txt') DO (
ECHO %%A >> C:\Scripts\errors.txt 
IF NOT EXIST \\%%A\c$\CL_Repair\. ECHO CREATING FOLDER \\%%A\c$\CL_Repair >> C:\Scripts\errors.txt 
IF NOT EXIST \\%%A\c$\CL_Repair\. MD \\%%A\c$\CL_Repair 
IF NOT EXIST \\%%A\c$\CL_Repair\somefile.exe ECHO copying somefile.exe \\%%A\c$\CL_Repair >> C:\Scripts\errors.txt 
IF NOT EXIST \\%%A\c$\CL_Repair\somefile.exe copy c:\CL_Repair\somefile.exe \\%%A\c$\CL_Repair 
IF NOT EXIST \\%%A\c$\CL_Repair\anotherfile.bat ECHO copying anotherfile.bat \\%%A\c$\CL_Repair >> C:\Scripts\errors.txt 
IF NOT EXIST \\%%A\c$\CL_Repair\anotherfile.bat copy c:\CL_Repair\anotherfile.bat \\%%A\c$\CL_Repair) 

GOTO End 

:END 
EXIT 
+0

感谢的建议,但它不会显示脚本无法创建文件夹的机器名称。 – user2889064

+0

增加了将计算机名称登录到日志的能力 – Leptonator

+0

它将从执行脚本的位置记录计算机名称,而不是从computers.txt中成功创建文件夹或无法连接或创建文件夹的计算机。 – user2889064