2011-10-02 3 views
5

मैं एक फ़ाइल के मालिक और समूह की सी स्ट्रिंग प्राप्त करने का प्रयास कर रहा हूं, stat() मुझे उपयोगकर्ता आईडी और समूह आईडी प्राप्त करने के बाद, लेकिन कैसे करें मुझे नाम मिल गया है?फ़ाइल के मालिक और समूह को ढूंढना (एक स्ट्रिंग के रूप में)

उत्तर

6

आप getgrgid() उपयोग कर सकते हैं समूह का नाम पाने के लिए और getpwuid() उपयोगकर्ता नाम पाने के लिए: getgrnam के साथ मिलकर

#include <pwd.h> 
#include <grp.h> 

/* ... */ 

struct group *grp; 
struct passwd *pwd; 

grp = getgrgid(gid); 
printf("group: %s\n", grp->gr_name); 

pwd = getpwuid(uid); 
printf("username: %s\n", pwd->pw_name); 
+1

धन्यवाद, बहुत अच्छा काम किया! – Radu

+0

ध्यान दें कि प्रासंगिक प्रविष्टि गुम होने पर 'getgrgid() 'और' getpwuid() '' NULL' वापस कर सकती है, इस मामले में आपको संभवतः संख्यात्मक आईडी को' sprintf() 'के साथ एक स्ट्रिंग में परिवर्तित करना चाहिए। – caf

संबंधित मुद्दे