• ベストアンサー

CentOS7でユーザーを取得する方法を教えて下さ

CentOS7でユーザーを取得する方法を教えて下さい コマンド、またはbash上で、フルネームとユーザー名を取得したいです。 添付しているのはGUI上の『ユーザーの追加』画面です。 ここで追加したユーザーのフルネームとユーザー名をコマンド、またはbash上で、一覧ではなく、ログインしている全ユーザーではなく、カレントユーザーの情報を取得したいです。 以上、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

ユーザーIDって、UIDじゃなくて フルネームのことを言っていたんですね。 getent passwd で取り出してから、パイプでgrepで絞るなり、sedで加工するなりで いいんじゃないかな。

webuser
質問者

お礼

申し訳ありません。 重大な報告ミスをしていました。 CentOS7は、別途立てているWindows serverのADDCに参加しています。 ですので、/etc/passwdの中に情報がありませんでした。 wbinfo -u でユーザー一覧は取れますし、 echo $USERや whoamiでユーザーは取れます。 しかし、フルネームがどこにあるのか分かりません。 wbinfo のパラメータを一通り見ましたが取れそうなのはありませんでした。 でも、ログイン画面にフルネームが出ているし、 GUIで設定、ユーザーと辿ればそこにもユーザー、フルネームは出ていますので、どこかに格納はされているハズなんです。

webuser
質問者

補足

回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。

その他の回答 (5)

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.6

>申し訳ありません。 >重大な報告ミスをしていました。 #4の方の書かれているgetent passwdは試されたんですか?(カレントユーザーに絞りたいならgetent passwd $USER) /etc/passwdに見当たらなかったから試してませんという事でしたら試してみてください。 getent passwdは/etc/passwdを参照するだけではありませんから。

webuser
質問者

お礼

あ!!! いました!いました! $ getent passwd $USER adtest:*:16777224:16777220:ADテスト ユーザー:/home/adtest:/bin/sh でも、「ADテスト ユーザー」だけって取れませんか。

webuser
質問者

補足

回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html 案内を入れている時にこの回答をみつけました。 すみません。 一旦、#4さんをベストアンサーとして閉じます。

回答No.5

>CentOS7は、別途立てているWindows serverのADDCに参加しています。 ユーザーのフルネームは「ドメインコントローラーであるWindows serverが持っている」ので、Windows serverに対してユーザー情報の問い合わせをしないと、フルネームを取得できません。 で、残念ながら「当方はCentOS7で、Windows serverに問い合わせする方法を知らない」ので、お答えできません。 フリーソフトとか、ADDCのコンポーネント内に「ドメインコントローラーに問い合わせを行なうツール」があると思うので、探してみて下さい。

webuser
質問者

お礼

> Windows serverに対してユーザー情報の問い合わせをしないと、フルネームを取得できません。 はい、でも初回のログイン時にWindows serverから持ってきて、どこかに保存してるんです。 だって、ADDCと通信が切れていても、設定、ユーザーのGUIツールで見ると入ってるし。 ADDCは定期的に信頼関係を確認するけど、リアルタイムにガッチリ繋がってないと即退場させられたり、入場を断られたりするものではありません。 一度信頼関係を構築すると、しばらくはADサーバーガシャットダウンされていても入れる。

webuser
質問者

補足

回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。

  • h271015
  • ベストアンサー率71% (62/87)
回答No.3

> やってみましたが値が返ってきませんでした。 ご確認ありがとうございます。 $USER に値が入っていないということですね・・・ 以下ではどうでしょうか? (ユーザ名の部分を取得したいユーザ名に変更します) grep ユーザ名 /etc/passwd フルネームの部分のみ取り出したいのであれば以下のような形でいけると思いますが・・・ grep ユーザ名 /etc/passwd | awk -F":" '{ print $5 }'

webuser
質問者

お礼

/etc/passwdをcatしてみましたが、中にユーザー情報はありませんでした。 申し訳ありません。 重大な報告ミスをしていました。 CentOS7は、別途立てているWindows serverのADDCに参加しています。 ですので、/etc/passwdの中に情報がありませんでした。

webuser
質問者

補足

回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。

  • h271015
  • ベストアンサー率71% (62/87)
回答No.2

以下のコマンドで、ログインしているユーザの「ユーザ追加」時に入力した情報を表示できると思います。 $ grep $USER /etc/passwd

webuser
質問者

お礼

ありがとうございます やってみましたが値が返ってきませんでした。

webuser
質問者

補足

回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。

回答No.1

>コマンド、またはbash上で、一覧ではなく、ログインしている全ユーザーではなく、カレントユーザーの情報を取得したいです。 bash上で who am i または whoami または export PS1="[\u@\h \W]\\$ " を実行。 お勧めは、最後の「プロンプトをデフォルトに戻す」です。

webuser
質問者

お礼

ありがとうございます。 ◆who am i [test@CentOS7 root]$ who am i root pts/1 2016-01-07 11:47 (192.168.10.180) 欲しかったものと全く違う物が取れました。 ◆whoami [test@CentOS7 root]$ whoami test OKです! whoamiでユーザー名が取得できることはこれで確定しました。 あとは、フルネームです。 ◆export PS1="[\u@\h \W]\\$ " [test@CentOS7 root]$ export PS1="[\u@\h \W]\\$ " [test@CentOS7 root]$ echo $PS1 [\u@\h \W]\$ うーん、扱い方が分かりません。

webuser
質問者

補足

回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。

関連するQ&A

専門家に質問してみよう