Visit Our UNIX and Linux User Community


Getting Home Directory


 
Thread Tools Search this Thread
Top Forums Programming Getting Home Directory
# 1  
Old 08-28-2009
Getting Home Directory

Hi

I need to get the home directory of current user who is running the program, also i need to store the value in a particular variable and pass to the function.

thanks in advance
# 2  
Old 08-28-2009
Hello,

you can get this information using getuid() combined with getpwuid(). See an example below (error handling etc. have been omitted...)

Code:
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <pwd.h>

int
main()
{
   struct passwd *pwd;

   if ( (pwd=getpwuid(getuid())) != NULL )
   {
      printf("Home Dir of user running the program: %s\n", pwd->pw_dir);
   }

   return 0;
}

HTH,
Loc
# 3  
Old 08-31-2009
Thanks,

But i need to store the home directory value in variable instead of printing..
# 4  
Old 08-31-2009
Then strncpy(3) it to a char* of your choosing.
# 5  
Old 08-31-2009
Hi cutechaps,

the directory is stored in the variable pwd->pw_dir ...

Cheers,
Loc
--

Previous Thread | Next Thread
Test Your Knowledge in Computers #80
Difficulty: Easy
Many operating systems today, including Android, Chrome OS, Steam OS, and myriad embedded systems for devices, are based on Linux.
True or False?

9 More Discussions You Might Find Interesting

1. Solaris

SunOS confusing root directory and user home directory

Hello, I've just started using a Solaris machine with SunOS 5.10. After the machine is turned on, I open a Console window and at the prompt, if I execute a pwd command, it tells me I'm at my home directory (someone configured "myuser" as default user after init). ... (2 Replies)
Discussion started by: egyassun
2 Replies

2. Solaris

Not able to create directory in /home.

I am working on Solaris 10 machine with autofs(auto_home) disabled. But when I am creating any directory inside /home like /home/Telco, it's going in sleep, and nothing is happening until I manually end the process. Can any one help me out here? ---------- Post updated 2014-01-14 at 05:05... (2 Replies)
Discussion started by: nixhead
2 Replies

3. Solaris

home directory for roleadd

hi all.. by seeing the subject, you can judge that i am new bee to solaris. my question in mind is 'Why do we need to specify a home directory for roleadd ?'. specifying a home directory for user is meaningful because user oriented preferences can be placed inside it. RBAC uses attributes in... (1 Reply)
Discussion started by: starworse@yahoo
1 Replies

4. Solaris

Restricting SFTP user to a defined directory and home directory

Hi, I've created solaris user which has both FTP and SFTP Access. Using the "ftpaccess" configuration file options "guest-root" and "restricted-uid", i can restrict the user to a specific directory. But I'm unable to restrict the user when the user is logged in using SFTP. The aim is to... (1 Reply)
Discussion started by: sftpuser
1 Replies

5. SuSE

Could not chdir to home directory

Hi, on logging into oracle account i got these error message Could not chdir to home directory /home/oracle: No such file or directory /usr/X11R6/bin/xauth: error in locking authority file /home/oracle/.Xauthority found the command used in creating user was usermod -d /home/oracle -m... (5 Replies)
Discussion started by: saha
5 Replies

6. Shell Programming and Scripting

home directory

hello i want shell script. as root , i want to untar specific.tar.gz to all home user directory and after untar , there is 1.txt 2.txt ~~ 26.txt in/public_html/test1/ i want randomly selected 6 text files in 1.txt 2.txt ~26.txt to be renamed newword1.word , newword2.word , ~~... (8 Replies)
Discussion started by: topic32428285
8 Replies

7. UNIX for Dummies Questions & Answers

home directory

Hi what is the difference between the directory named /home and the user's home directory? can anyone plz reply? really confuse about it!!!!!!!! thank you (1 Reply)
Discussion started by: nokia3100
1 Replies

8. UNIX for Dummies Questions & Answers

cd into home directory ~

I'm trying to cd into a home directory with cd ~username_here and I'm getting the following error: ~username_here: does not exist The directory exists and I can directly go to it via cd /export/home/username_here without any problems. Any suggestions? (4 Replies)
Discussion started by: here2learn
4 Replies

9. UNIX for Dummies Questions & Answers

c++ home directory??

when i compile *.cpp files the compiler didn't find the non standart includes.If i have to put the full path of the includet files where shall i begin from root dirctory or i heve to put includet files in cpp home directory??? can i compile java files in unix(linux mandrake 7) if yes haw... (3 Replies)
Discussion started by: user666
3 Replies

Featured Tech Videos