For each loop?
Hey all, I'm in need of a script that I can use to share alot of folders all in one directory. I have the following for example:
net share <sharename>=<path> /CACHE:no /GRANT:domain\user,READ|CHANGE|FULL
but obviously this requires me to type in each folder name, anyone have a script for automating this? Any help appreciated.
For each loop?
how good are you with VBS?
enumerate all subfolders in a folder:
Scripting Files and Folders using VBScript
use a for each loop that runs a command for each returned folder name
How to: Execute a file/program in VBScript - CRM Developer
Haven't tested it but it should be a good start if it does not work straight away.Code:dim folderpath folderpath = "C\folder" Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFolder = objFSO.GetFolder(folderpath) Set colSubfolders = objFolder.Subfolders For Each objSubfolder in colSubfolders Wscript.Echo objSubfolder.Name Run "net share " & objSubfolder.Name & "=" & folderpath & "\" & objSubfolder.Name & " /CACHE:no /GRANT:domain\user,READ|CHANGE|FULL" Next Sub Run(ByVal sFile) Dim shell Set shell = CreateObject("WScript.Shell") shell.Run Chr(34) & sFile & Chr(34), 1, false Set shell = Nothing End Sub
Last edited by SYNACK; 20th August 2008 at 04:53 PM.
Other way to do this if you're not very confident of your scripting it to use a spread. Use the CONCATENATE function to combine the variables with the rest of the code.
Why don't you just share the root of all these folders? With the correct permissions, people would only be able to get into what they should be able to anyway.
If mapping drives off these shares, it is possible to map a subdirectory of a share as a drive letter too.
i use this:
FOR /D %%G IN (*.*) DO NET SHARE "%%G=%CD%\%%G" /GRANT:Everyone,FULL /CACHE:None
yours might look like this:
FOR /D %%G IN (*.*) DO net share <sharename>=<path> /CACHE:no /GRANT:domain\user,READ|CHANGE|FULL
run this bat file from the folder containing folders to be shared.
or *.* probably will not work
Thanks for these scripts guys, will try them out when I get home tonight
simpsonj (16th September 2010)
There are currently 1 users browsing this thread. (0 members and 1 guests)