#!/usr/bin/perl

# Usage: id

sub u { local($name) = getpwuid($_[0]); $name && "($name)";}
sub g { local($name) = getgrgid($_[0]); $name && "($name)";}
sub bynum { $a <=> $b; }

print "uid=$<", &u($<);
print " gid=", $(+0, &g($();
print " euid=$>", &u($>) if $> != $<;
print " egid=", $)+0, &g($)) if $) != $(;
@groups=split(' ', $(); shift(@groups);
@groups && print " groups=",
    join(',', sort bynum grep(($_ .= &g($_)) || 1, @groups));
print "\n";
