- ベストアンサー
CentOS7でユーザーを取得する方法を教えて下さ
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
ユーザーIDって、UIDじゃなくて フルネームのことを言っていたんですね。 getent passwd で取り出してから、パイプでgrepで絞るなり、sedで加工するなりで いいんじゃないかな。
その他の回答 (5)
- wormhole
- ベストアンサー率28% (1626/5665)
>申し訳ありません。 >重大な報告ミスをしていました。 #4の方の書かれているgetent passwdは試されたんですか?(カレントユーザーに絞りたいならgetent passwd $USER) /etc/passwdに見当たらなかったから試してませんという事でしたら試してみてください。 getent passwdは/etc/passwdを参照するだけではありませんから。
お礼
あ!!! いました!いました! $ getent passwd $USER adtest:*:16777224:16777220:ADテスト ユーザー:/home/adtest:/bin/sh でも、「ADテスト ユーザー」だけって取れませんか。
補足
回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html 案内を入れている時にこの回答をみつけました。 すみません。 一旦、#4さんをベストアンサーとして閉じます。
- chie65536(@chie65535)
- ベストアンサー率44% (8766/19892)
>CentOS7は、別途立てているWindows serverのADDCに参加しています。 ユーザーのフルネームは「ドメインコントローラーであるWindows serverが持っている」ので、Windows serverに対してユーザー情報の問い合わせをしないと、フルネームを取得できません。 で、残念ながら「当方はCentOS7で、Windows serverに問い合わせする方法を知らない」ので、お答えできません。 フリーソフトとか、ADDCのコンポーネント内に「ドメインコントローラーに問い合わせを行なうツール」があると思うので、探してみて下さい。
お礼
> Windows serverに対してユーザー情報の問い合わせをしないと、フルネームを取得できません。 はい、でも初回のログイン時にWindows serverから持ってきて、どこかに保存してるんです。 だって、ADDCと通信が切れていても、設定、ユーザーのGUIツールで見ると入ってるし。 ADDCは定期的に信頼関係を確認するけど、リアルタイムにガッチリ繋がってないと即退場させられたり、入場を断られたりするものではありません。 一度信頼関係を構築すると、しばらくはADサーバーガシャットダウンされていても入れる。
補足
回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。
- h271015
- ベストアンサー率71% (62/87)
> やってみましたが値が返ってきませんでした。 ご確認ありがとうございます。 $USER に値が入っていないということですね・・・ 以下ではどうでしょうか? (ユーザ名の部分を取得したいユーザ名に変更します) grep ユーザ名 /etc/passwd フルネームの部分のみ取り出したいのであれば以下のような形でいけると思いますが・・・ grep ユーザ名 /etc/passwd | awk -F":" '{ print $5 }'
お礼
/etc/passwdをcatしてみましたが、中にユーザー情報はありませんでした。 申し訳ありません。 重大な報告ミスをしていました。 CentOS7は、別途立てているWindows serverのADDCに参加しています。 ですので、/etc/passwdの中に情報がありませんでした。
補足
回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。
- h271015
- ベストアンサー率71% (62/87)
以下のコマンドで、ログインしているユーザの「ユーザ追加」時に入力した情報を表示できると思います。 $ grep $USER /etc/passwd
お礼
ありがとうございます やってみましたが値が返ってきませんでした。
補足
回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。
- chie65536(@chie65535)
- ベストアンサー率44% (8766/19892)
>コマンド、またはbash上で、一覧ではなく、ログインしている全ユーザーではなく、カレントユーザーの情報を取得したいです。 bash上で who am i または whoami または export PS1="[\u@\h \W]\\$ " を実行。 お勧めは、最後の「プロンプトをデフォルトに戻す」です。
お礼
ありがとうございます。 ◆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]\$ うーん、扱い方が分かりません。
補足
回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。
お礼
申し訳ありません。 重大な報告ミスをしていました。 CentOS7は、別途立てているWindows serverのADDCに参加しています。 ですので、/etc/passwdの中に情報がありませんでした。 wbinfo -u でユーザー一覧は取れますし、 echo $USERや whoamiでユーザーは取れます。 しかし、フルネームがどこにあるのか分かりません。 wbinfo のパラメータを一通り見ましたが取れそうなのはありませんでした。 でも、ログイン画面にフルネームが出ているし、 GUIで設定、ユーザーと辿ればそこにもユーザー、フルネームは出ていますので、どこかに格納はされているハズなんです。
補足
回答頂きありがとうございました。 ADDC上のユーザーであるという前提を書いていなかったので立て直しました。 CentOS7でAD上のフルネームを取得する方法を教えてください。 http://okwave.jp/qa/q9108056.html ひとまずは、ローカルユーザーの取得の方法を教えてくださった方をベストアンサーとして閉じます。