首页 > 解决方案 > 打印所有用户的环境变量

问题描述

我在互联网上到处搜索,以找到一种在 linux 服务器上显示所有用户(以 root 身份)的所有环境变量的方法。

我试图编写一个脚本来运行envprintenv作为系统上的每个可用用户,但我想知道一种更简单的方法来做到这一点。

你能帮我吗 ?

谢谢你。

标签: linuxbashenvironment-variables

解决方案


AFAIC 您不能使用单个命令一次为所有用户获取它,但对于单个用户:

# RHEL
sudo -Hiu $USER env

# Deb
su - $USER -c 'printenv'

知道这一点,您可以创建脚本,例如:

#!/bin/bash
for USER in $(grep /home /etc/passwd | cut -d: -f1)
do
  echo "==== User: ${USER}"
  su - $USER -c 'printenv'
done

推荐阅读