14

本から学びながら、Unix で(ls)コマンドを実装しています。(-l) フラグを指定した(ls)コマンドの実装のコーディング部分で、ファイルのユーザー名とグループ名を入力する必要があることがわかりました。これまでのところ、次の行からユーザー ID とグループ ID を取得しています。

struct stat statBuf;

statBuf.st_uid; //For the user id. 
statBuf.st_gid; //For the group id. 

Unixのデフォルト(ls)コマンドでは、ファイルの情報は、ユーザー ID の代わりにユーザー名が表示されるような方法で出力されます。

ID からユーザー名とグループ名を取得するための正しい方法を見つけるのを手伝ってくれる人はいますか?

4

2 に答える 2

25

を使用getpwuidして、特定の UID (ユーザー名は含まれますが、パスワード自体は含まれません) のパスワードgetgrgidファイル エントリを検索し、特定の GID のグループ ファイル エントリを検索します。

于 2011-11-25T11:25:46.217 に答える