XP batch files: Create variable for current user account and find current user

   Posted December 7, 2006 by Jimmy Selix in Batch file programming

this is a quick batch file recipe that is more of an appetizer than a full meal. this recipe is just a quick batch file that lets you find the user who is currently logged in when the batch file is ran by using a FOR statement and the %USERPROFILE% variable in XP.


this batch file will do the following:

find the current user logged in when the file is ran
setup a variable, user, whose value will be set to the user logged in
and then echo back the user login.

    @echo off
    for /f “tokens=3 delims=\” %%i in (“%USERPROFILE%”) do (set user=%%i) 2>&1
    echo “logged in user:%user%”
    pause

this can be very useful when used in conjunction with other batch file commands.

if you want this info be put into a text file just use this command

    @echo off
    for /f “tokens=3 delims=\” %%i in (“%USERPROFILE%”) do (set user=%%i) 2>&1
    echo “%user%” > c:\%user%.txt
    pause

so lets say i’m logged in as john, a file called john.txt would be created and inside of the file the user login ‘john’ will be residing.

this command/line can be changed and used for various things such as copying files to a user’s my documents or desktop or anything where you need to use the user account.

–updated code; removed do if exist statement, used a straightforward do

 

About Jimmy Selix

Jimmy Selix is an early adopter that loves to be one of the first on the block to have the latest and greatest in technology and gadgets. Another love of his is being able to share his knowledge to others seeking it. Feel free to drop any comments or questions that you may have.
View more articles by Jimmy Selix

The Conversation

Follow the reactions below and share your own thoughts.