は、私はそれは私がルートを表示する必要が0
だ場合、私は、名前を必要とする代わりに、そのことを、数だけを表示する/proc/*/status
が、grepを使ってUID情報を抽出するには?
cat $i/status|grep "^Uid"|awk '{printf "%4s",$2}'
からユーザー名を取得する必要があります。
は、私はそれは私がルートを表示する必要が0
だ場合、私は、名前を必要とする代わりに、そのことを、数だけを表示する/proc/*/status
が、grepを使ってUID情報を抽出するには?
cat $i/status|grep "^Uid"|awk '{printf "%4s",$2}'
からユーザー名を取得する必要があります。
あなたは、ほとんどがあります。ユーザ名にUIDを解決するためのgetent
を使用します。
getent passwd `grep "^Uid" /proc/$i/status |awk '{printf "%4s",$2}'`| cut -d: -f1
$ awk 'NR==FNR {uid[$3]=$1; next} /^Uid:/ {print uid[$2]}' FS=":" /etc/passwd FS="[ \t]+" /proc/1665/status
root
はの説明:
NR==FNR { # /etc/passwd
uid[$3]=$1 # an array with key=uid, value=username
next
}
/^Uid:/ { # /proc/.../status record startin with Uid
print uid[$2] # print username from array where uid matches
}
ありがとうございますが、数字も印刷されます。ユーザ名を印刷するにはどうしたらいいですか? –
は私のユーザ名のみを表示します。 – Misko