前端之家收集整理的这篇文章主要介绍了
bash – 如何在UNIX上获得用户友好的用户名?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我希望得到“友好”的
名称,而不是
用户名,至少如果给定
用户存在这样的字符串.我尝试过的事情:
whoami
jamesarosen
id -un
jamesarosen
id -p
uid jamesarosen
groups staff com.apple.access_screensharing ...
id -P
jamesarosen:********:501:20::0:0:James A. Rosen:/Users/jamesarosen:/bin/bash
最后一个有我正在寻找的信息,但我不想解析它,特别是因为我并不十分确信格式(特别是:s的数量)在各个操作系统中保持一致.
解析
用户全名的GECOS字段
/ etc / passwd和大多数@L_301_0@的格式在类Unix系统中非常标准化.如果您发现异常,请务必告诉我们.同时,在类Unix系统上获得所需内容的最简单方法是使用getent和cut来解析GECOS字段.例如:
getent passwd $LOGNAME | cut -d: -f5 | cut -d,-f1