-
FOR loop Batch help!
Hiya :) i was just wondering if theres someone with good knowledge of windows batch out there, whos willing to help me?
For university iv been required to create a windows batch script which will help an admin. So far I’ve done add/remove/edit user, backup, system info etc however my tutor has advised me to create a FOR loop on add user. Atm the admin will manually enter each user name and password however i want to run a loop which will read an existing text file and automatically create the accounts.
I understand that the structure of a loop is FOR %A IN (list) DO command [ parameters ]( http://www.robvanderwoude.com/for.php) and so far i have come up with “for %%a in (users.txt) do [net user /add]” something such as this but obviously its not working.
Do i have to declare users.txt and insert it between net user and /add? Or is this completely wrong? Iv been trying to figure this out for days and there isn’t much material to go on. Thanks in advanced for any help given, its much appreciated!
-
This might help a little: http://www.robvanderwoude.com/for.php
If you want to go line by line, this would work for reading the text file:
Code:
FOR /f %%a in (users.txt) DO (
ECHO %%a
)
If the users are delimited with commas, you will have to do this:
Code:
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /f "tokens=1,2,3,4 delims=," %%a IN (users.txt) DO (
SET user=%user%%%a
SET firstname=%firstname%%%b
SET lastname=%lastname%%%c
SET group=%group%%%d
REM -- echo the variable names like this:
ECHO !user! - !firstname! - !lastname! - !group!
REM -- or the tokens like this:
ECHO %%a - %%b - %%c - %%d
)
ENDLOCAL
PAUSE
Contents of users.txt delimited with commas:
Code:
roberts, robert, smith, users
janej, jane, jones, administrators
samanthar, sam, richardson, users
peterc, peter, cottontail, administrators
Resources:
http://www.robvanderwoude.com/variableexpansion.php
http://blog.crankybit.com/why-that-b...-isnt-working/