Linux每日一篇 - 81 - id
Linux用户身份查看神器!掌握id命令,轻松查看用户ID和组ID信息,了解权限配置!
id命令是什么?
id命令用于显示用户的ID信息,包括用户ID(UID)、组ID(GID)以及用户所属的所有组,是了解用户权限配置的重要工具。
基本用法
# 显示当前用户ID信息
id
# 显示指定用户ID信息
id username
# 仅显示用户ID
id -u
# 仅显示组ID
id -g
# 显示用户名
id -un
# 显示组名
id -gn
# 显示所有组
id -G
# 显示所有组名
id -Gn
实用技巧
# 查看当前用户信息
id
# 检查当前用户是否为root
if [ "$(id -u)" -eq 0 ]; then
echo "当前为root用户"
else
echo "当前为普通用户"
fi
# 获取当前用户ID号
USER_ID=$(id -u)
echo "用户ID: $USER_ID"
# 获取当前用户组ID
GROUP_ID=$(id -g)
echo "组ID: $GROUP_ID"
# 获取当前用户名
USERNAME=$(id -un)
echo "用户名: $USERNAME"
# 获取当前用户所属所有组
ALL_GROUPS=$(id -G)
echo "所属组ID: $ALL_GROUPS"
# 获取当前用户所属所有组名
ALL_GROUP_NAMES=$(id -Gn)
echo "所属组名: $ALL_GROUP_NAMES"
# 检查用户是否属于特定组
id -Gn | grep -q "sudo\|wheel" && echo "用户有sudo权限" || echo "用户无sudo权限"
常用场景
# 查看当前用户完整信息
id
# 检查用户权限级别
if [ $(id -u) -eq 0 ]; then
echo "root权限"
else
echo "普通权限"
fi
# 在脚本中使用用户ID
SCRIPT_USER_ID=$(id -u)
echo "脚本执行用户ID: $SCRIPT_USER_ID"
# 检查特定用户信息
id root
# 检查用户组权限
id -Gn $USER
# 在安装软件时检查权限
if [ $(id -u) -ne 0 ]; then
echo "请使用sudo运行此脚本"
exit 1
fi
# 验证用户是否存在
id username &>/dev/null && echo "用户存在" || echo "用户不存在"