marcos j
marcos j

Reputation: 37

Print the full name of user in batch

I need to print the full name of the current user in the console, I have this code that does what I need but only partially

NET USER %username% /DOMAIN | FIND /I "Full name" >tmp.txt
set /p VAR=<tmp.txt
echo %VAR%
del tmp.txt

Because the result of the print is for example "Full Name Juan Perez" And the only thing I need is "Juan Perez"

Is there a way to do what I need?

Upvotes: 0

Views: 1019

Answers (1)

Magoo
Magoo

Reputation: 80033

Theoretically,

@ECHO OFF
SETLOCAL
FOR /f "tokens=2*delims= " %%b IN ('NET USER %username% /DOMAIN 2^>nul ^|find /I "Full name"') DO SET "var=%%c"
ECHO Full name : "%var%"
GOTO :EOF

but NET USER %username% /DOMAIN returns an error for me.

The 2^>nul redirects errors. the ^ before > and | tells cmd the character is part of the '-enclosed command to be executed, not of the for itself.

Documentation for for can be found by executing for /? from the prompt, or reading thousands of examples on SO

Upvotes: 1

Related Questions