システム内のすべてのユーザーのenv(環境)概要をどのように取得できますか?
ステータス:passwdに600人以上のユーザーがいますが、各ユーザーは特定のプロジェクトパスの環境変数を持つことができます(最大10個)。
1つの方法は、各アカウントでログインし、環境を入力して手動で確認することです。
これを確認し、結果をファイルに保存するためのルートまでより快適な方法はありますか?
システム: HP-UX/dtterm
答え1
Linux:rootで繰り返す
su <username> -c 'echo $VARNAME' --login
すべての関連ユーザー名。 HP-UXでも同様に機能する必要がありますが、確認してくださいman su
。
ローカルシェルが変数を拡張しないようにするには、単一引用符を使用することが重要です。
答え2
ドットファイルが表示され、環境変数はユーザーの/homeディレクトリ(.bashrcや.localrcなど)の.filesに設定されています。探している変数の名前がわかっている場合は、grepを使用して検索できます。以下の文字列の例では、「set」または「setenv」を探しています。
cat /home/*/.* | grep 'setenv\|set'