Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 3214
  • Last Modified:

How to querry server for license information using slmgr.vbs

We deployed some 2008 servers in the past with the wrong license and now some of them are losing their activation.   I can use the slmgr.vbs script to capture individual server status but need to find a way to query all my servers. there are probably a couple hundred.

I used the command

cscript slmgr.vbs computername -xpr

output:

Microsoft (R) Windows Script Host Version 5.7
Copyright (C) Microsoft Corporation. All rights reserved.

The machine is permanently activated.

How can I use the script to query all my 2008 servers an dump the results to it's own result file?  example: computername.txt

(I have a text file named computers.txt with all of them listed)



0
Globalquest
Asked:
Globalquest
  • 2
  • 2
1 Solution
 
devinnoelCommented:
The standard redirection symbol > might work.

Try adding:
> filename.txt

On the end, it should the output to a file.

C:\Temp>dir *.txt
 Volume in drive C is OSDisk

 Directory of C:\Temp

File Not Found

C:\Temp>echo testing
testing

C:\Temp>dir *.txt
 Volume in drive C is OSDisk

 Directory of C:\Temp

File Not Found

C:\Temp>echo testing > test.txt

C:\Temp>dir *.txt
 Volume in drive C is OSDisk

 Directory of C:\Temp

03/04/2011  02:01 PM                10 test.txt
               1 File(s)             10 bytes

C:\Temp>type test.txt
testing

Open in new window


0
 
GlobalquestAuthor Commented:
I can run the command

cscript slmgr.vbs computername -xpr >c:\computername.txt

And that will give me the the desired results for that specific computer in that file.

What I really need is a way to scan multiple servers listed in either a text or csv file and dump the results into a text file for each server scanned.

I've tried editing a copy of  slmgr.vbs with no luck.  Of course, I am not a scripter.
0
 
arnoldCommented:
you could use for %host% in contents from a file:
Example: http://www.tech-recipes.com/rx/363/processing-the-contents-of-a-text-file-using-for-loop/
FOR /f %a in (‘complist.txt’) do echo Computer: %a
replace the echo with the line you have and make sure to change the redirect (>) to append using (>>)

Open in new window

0
 
GlobalquestAuthor Commented:
Ok here is the command that has so far worked

FOR /f %a in (d:\ncs\act\servers.txt) do cscript slmgr.vbs  %a -xpr >d:\ncs\act\%a.txt

It queries the server and dumps to it's own text file.  This is helpful because the output of the vbs script does not echo the server name.
0
 
arnoldCommented:
there is nothing that prevents you from doing the
(echo %%a >> somefile; cscript slmgr.vbs  %a -xpr >> somefile; echo end of %%a >> somefile)
http://stackoverflow.com/questions/359120/batch-how-to-end-an-for-loop-properly
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now