randeepsp
randeepsp

Reputation: 3842

grep user name in unix

I want to grep the username. the command id gives the following.
id output is
uid=0(root) gid=0(root)

but i want the output as only root or who ever the user is.

Upvotes: 0

Views: 2456

Answers (2)

unwind
unwind

Reputation: 399959

That's not a grep, that's a cut:

$ id | cut -d '(' -f 2 | cut -d ')' -f 1

If you're doing this in a script (as a comment implies), you need to capture the output of the command properly. In bash, use:

USER=$(id | cut -d '(' -f 2 | cut -d ')' -f 1)

Many o(th|ld)er shells support the backtick syntax:

USER=`id | cut -d '(' -f 2 | cut -d ')' -f 1`

Upvotes: 1

Diomidis Spinellis
Diomidis Spinellis

Reputation: 19345

id -un

will directly print the name associated with the current effective user-id.

Upvotes: 0

Related Questions