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和大多数GECOS field的格式在类Unix系统中非常标准化.如果您发现异常,请务必告诉我们.同时,在类Unix系统上获得所需内容的最简单方法是使用getent和cut来解析GECOS字段.例如:

getent passwd $LOGNAME | cut -d: -f5 | cut -d,-f1

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...