Solved

multiple net commands

Posted on 2013-12-09
16
216 Views
Last Modified: 2013-12-17
Is there any easy way to do a bulk list of net commands in one single go? Without having to execute the commands one-by-one?
0
Comment
Question by:pma111
  • 8
  • 7
16 Comments
 
LVL 68

Expert Comment

by:Qlemo
ID: 39705618
Use a text file containing all commands as you would enter them in the netsh prompt, and provide that file: netsh -f c:\Scripts\NetShCmds.txt

Or create the commands on the fly:
@echo off
( echo interface show interface
  echo ras ip show config
) | netsh

Open in new window

This is handy if you need to build the commands depending on conditions, have to insert e.g. interface names you got earlier from another netsh, and the like.
0
 
LVL 1

Expert Comment

by:BlogITman
ID: 39710413
The answer above will work, if you are not very familiar with programming there are other ways to do similar net commands. For example three of the most use net commands are:
Net use
Net share
Net view

It is a straightforward process to add any of the net commands in a *.cmd or *.bat file.
For example:

Copy and paste the following into Notepad then run it in  command window aka dos prompt

:: ***************************************************
:: Filename: Netcmds.cmd
:: Purpose: to execute Net commands one at a time
:: (to loop use a call or other method)
:: ***************************************************
@echo off
@echo Following is list of shared drives for this PC
net use
::
@echo Following is list of netbios named sharable PC's
net view
pause
Exit
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39710733
Oh, I misread the question to be about NETSH, which is different (has a prompt mode).
NET doesn't have such a mode, and there is no other way than to note each net cmd one after another. Maybe you should tell more about what you are targeting at, so we might be able to taylor something.
0
 
LVL 3

Author Comment

by:pma111
ID: 39710914
by: BlogITman

How do I split the commands, is it just one command per line?

How do you execute the actual *cmd file within the command prompt, once I have done it?

Essentially I have about 200

net view \\servername /all >servername.txt

commands to run.
0
 
LVL 68

Accepted Solution

by:
Qlemo earned 500 total points
ID: 39710946
There are better ways to ask for the available shares on servers, like with WMI queries.
What you can do if you want to stay with net view is this:
@echo off
for %%S in (server1 server2 server3) do net view \\%%S /all > %%S.txt

Open in new window

or
@echo off
for /F "tokens=*" %%S in (servers.txt) do net view \\%%S /all > %%S.txt

Open in new window

(Put one of both into a .cmd file, and to execute, just type the name of that .cmd file).
The first one requires you to enumerate all servers in the batch file.
The second one reads a file "Servers.txt" with one server per line.
You might have to add paths to file names, or, better, put the .cmd file into the same folder as the input and output files.
0
 
LVL 3

Author Comment

by:pma111
ID: 39711045
I will opt for option number 2, however, in what format do you supply the "server" parameter? i.e. is it just \\server or IP, or domain\server
0
 
LVL 3

Author Comment

by:pma111
ID: 39711059
And where exactly do you need to save "servers.txt", and how does it need to be delimited, i.e. line space, comma etc?
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39711178
The servers.txt file just contains the server name, each one at an own line:
server1
server2

Open in new window

To make sure the paths used for all files are correct, add them:
@echo off
for /F "tokens=*" %%S in (c:\Scripts\servers.txt) do net view \\%%S /all > c:\Scripts\Results\%%S.txt

Open in new window

That way it doesn't matter where the cmd file is, and how you start it. The files will always be searched for and stored in those folders you noted in the cmd file.
0
Want to promote your upcoming event?

Are you going to an event? Are you going to be exhibiting at a tradeshow? Talking at a conference? Using a promotional banner in your email signature ensures that your organization’s most important contacts stay in the know and can potentially spread the word about the event.

 
LVL 3

Author Comment

by:pma111
ID: 39711186
Ok thanks, so your code above it going to create one txt file per server?
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39711203
Yes. It would be very difficult with cmd.exe batches to get the output into something more useful, like a table containing server name, share name, and description. But if you like that more, we could collect ALL output into a single file:
@echo off
copy nul c:\Scripts\NetView.txt
for /F "tokens=*" %%S in (c:\Scripts\servers.txt) do net view \\%%S /all >> c:\Scripts\NetView.txt

Open in new window

0
 
LVL 3

Author Comment

by:pma111
ID: 39711393
As i am new to cmd/batch files, could you give a bit of a laymans guide of what

@echo off --  is actually doing?
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39711508
@ prevents the following command from being echoed.
echo off switches off the default of echoing all commands as they are executed.

If you omit that line, all commands can be seen on "stdout", which is by default the console, but a file if using the ">" operator. Usually you do not want to see the commands, only specific output, and so @echo off is the first command in a cmd file you will see on most occasions.
0
 
LVL 3

Author Comment

by:pma111
ID: 39723665
A bit lost. I have saved the code

"@echo off
copy nul c:\Scripts\NetView.txt
for /F "tokens=*" %%S in (c:\Scripts\servers.txt) do net view \\%%S /all>> c:\Scripts\NetView.txt "


as 123.cmd

What when I open the command prompt do I enter to run this file/script?
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39723736
Just enter
   c:\Scripts\123
if you have saved the batch file in the Scripts folder.
0
 
LVL 3

Author Comment

by:pma111
ID: 39723812
And save it as .bat or .cmd, or doesnt it matter?
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 39723817
Doesn't matter. .bat is the "old style" name, .cmd says that you use advanced features of NT cmd.exe. But nothing changes if you change the extension from one to the other.
0

Featured Post

The problems with reply email signatures

Do you wish that you could place an email signature under a reply? Well, unfortunately, you can't. That great Exchange/Office 365 signature you've created will just appear at the bottom of an email chain. What a pain! Is there really no way to solve this? Well, there might be...

Join & Write a Comment

Storage devices are generally used to save the data or sometime transfer the data from one computer system to another system. However, sometimes user accidentally erased their important data from the Storage devices. Users have to know how data reco…
Possible fixes for Windows 7 and Windows Server 2008 updating problem. Solutions mentioned are from Microsoft themselves. I started a case with them from our Microsoft Silver Partner option to open a case and get direct support from Microsoft. If s…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
In this video, we discuss why the need for additional vertical screen space has become more important in recent years, namely, due to the transition in the marketplace of 4x3 computer screens to 16x9 and 16x10 screens (so-called widescreen format). …

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now