2013-06-27 1 views
0

나와 프로그래머가 아닌 사람이 VBScript에서 문자 나 숫자가 아닌 것을 제거하는 데 도움을 주시면 감사하겠습니다. PC의 이름을 입력하고 수정 된 이름을 저장하십시오. 그런 다음 도메인에 가입하거나 다시 가입하십시오.VBScript는 문자 나 숫자가 아닌 것을 제거합니다. (예 : A-BC-123 -> ABC123)

예 :

pc name: pc-home-543 
rename: pchome543 
join domain: homeworkplay 
restart and it all works 
+0

txt 파일에 PC 이름 목록이 있습니까? – Amol

답변

1

당신은 Win32_ComputerSystem WMI 클래스의 Rename 방법을 사용하여 컴퓨터의 이름을 바꿀 수 있습니다. 영숫자가 아닌 문자를 바꾸려면 정규 표현식을 사용하십시오.

Set net = CreateObject("WScript.Network") 
Set wmi = GetObject("winmgmts://./root/cimv2") 

Set re = New RegExp 
re.Pattern = "[^a-z0-9]*" 
re.Global = True 
re.IgnoreCase = True 

For Each sys In wmi.ExecQuery("SELECT * FROM Win32_ComputerSystem") 
    sys.Rename re.Replace(net.ComputerName, "") 
Next 

당신은 이름 변경이 효력을 발생하기 위해 컴퓨터를 다시 부팅해야합니다

CreateObject("WScript.Shell").Run "shutdown -r -t 0" 

을 당신이 나중에 도메인에 시스템을 다시 가입 할 필요가 있다고 생각하지 않지만, 당신이 할 경우 동일한 WMI 클래스의 JoinDomainOrWorkgroup 메서드로 처리 할 수 ​​있습니다.

관련 문제