how to find out the home directory of a user??


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting how to find out the home directory of a user??
# 8  
Old 04-08-2008
You should avoid cat of a single file. Grep can read the file just fine, you don't need cat to feed it.

Code:
#!/bin/sh

case $# in 0) echo foo: need an argument >&2; exit 1;; esac

for i in "$@"; do
  grep "$i" /etc/passwd | cut -d: -f6
done

Pay attention to the quoting; you want to avoid throwing an error if somebody calls your script with a string with spaces in it, or (worse yet) an actual shell command which gets executed and has dire side effects (think `rm -rf $HOME` in backticks).

You should probably actually grep "^$i:" to avoid accidentally printing the wrong information because of a coincidental substring match. (True story: grep era /etc/passwd would find "System Operator" and print root's home directory on BSD.)
Login or Register to Ask a Question

Previous Thread | Next Thread

10 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. Shell Programming and Scripting

Trying to delete a user and home directory

Good Afternoon, I'm trying userdel -r username on Solaris 9 and getting UX: userdel: ERROR: unable to find status about home directory: No such file or directory I see the user's home directory and getent passwd shows the user Anybody know what's causing it? (2 Replies)
Discussion started by: Stellaman1977
2 Replies

3. UNIX for Dummies Questions & Answers

User's home directory not being created

I am trying to create Oracle user. I will install oracle after that. But my problem is /home/oracle directory is not being created. bash-3.2# useradd -g oinstall -G dba,oper -d /home/oracle -m oracle cp: /home/oracle: Operation not applicable chown: /home/oracle: No such file or directory ... (3 Replies)
Discussion started by: hubatuwang
3 Replies

4. UNIX for Dummies Questions & Answers

Restricting a user to their home directory and below

I found this old closed thread: I can do these things, but how to I change someone's profile - where do I find the profile? I'm running Centos 5.6 ~~~~~~~~~ providing you have the password shell set to ksh, you can put this in his .profile: cd /opt/load alias -x cd=: (6 Replies)
Discussion started by: jjj0923
6 Replies

5. Solaris

Home Directory for oracle user

Hello all, I am Installing Oracle 11g on my Solaris OS. I created the below oracle user: # /usr/sbin/useradd -g oinstall -G dba oracle but when i am trying to to su - oracle it give me the below error No directory Do i have to setup a home directory for oracle user? and how can i do... (1 Reply)
Discussion started by: beayni33
1 Replies

6. Red Hat

User's home directory

Hi, By default user's home directory will be /home/$user. I want to change it to /javauser/$user. How can I do it? Thanks Jeevan. (5 Replies)
Discussion started by: jredx
5 Replies

7. 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

8. UNIX for Dummies Questions & Answers

Specifying FTP user Home Directory

Hi, I am running Solaris 10 and I am using the ftp server that comes with it. I would like to specify a specific directory as ftp user's home directory. For example, if "ftpuserx" ftps into my solaris machine, they will automatically be taken to "/space/web" directory, even though there... (0 Replies)
Discussion started by: annointed3
0 Replies

9. UNIX for Dummies Questions & Answers

user home directory problem

The home directory for me on my system is on /home/kwon. It was created using "useradd kwon" When i go to change the home directory for a user doing a usermod -d /home/test when they log on it gives them messages saying to generate new ssh keys, and it does. It gives me a thing that says... (1 Reply)
Discussion started by: BangYourWallnut
1 Replies

10. UNIX for Advanced & Expert Users

How can I forbid a user to go up his home directory

Hi everybody, How can I forbid a user to go up his home directory ? Thanks MarcoW (2 Replies)
Discussion started by: MarcoW
2 Replies
Login or Register to Ask a Question
UNBURDEN-HOME-DIR(1)						   User Commands					      UNBURDEN-HOME-DIR(1)

NAME
unburden-home-dir - unburdens home directories from caches and trashes SYNOPSIS
unburden-home-dir [ -n | -u | -f filter ] unburden-home-dir ( -h | --help | --version ) DESCRIPTION
unburden-home-dir unburdens the home directory from files and directory which cause high I/O or disk usage but are neither important if they are lost, e.g. caches or trash directory. When being run it moves the files and directories given in the configuration file to a location outside the home directory, e.g. /tmp or /scratch, and puts appropriate symbolic links in the home directory instead. OPTIONS
-f just unburden those directory matched by the given filter (a perl regular expression) -- matches the already unburdened directories if used together with -u. -F Do not check for files in use with lsof before (re)moving files. -n dry run (show what would be done) -u undo (reverse the functionality and put stuff back into the home directory) -h, --help show this help --version show the program's version EXAMPLES
Example configuration files can be found at /usr/share/doc/unburden-home-dir/examples on Debian-based systems and in the etc/ directory of the source tar ball. FILES
/etc/unburden-home-dir, /etc/unburden-home-dir.list, ~/.unburden-home-dir, ~/.unburden-home-dir.list, /etc/default/unburden-home-dir, /etc/X11/Xsession.d/95unburden-home-dir Read /usr/share/doc/unburden-home-dir/README on debianoid installations or README in the source tar ball for an explanation of these files. SEE ALSO
corekeeper (http://openvswitch.org/cgi-bin/gitweb.cgi?p=corekeeper), autotrash(1), agedu(1), bleachbit(1). For du(1)-like but more comfortable tools, see ncdu(1) (text-mode), baobab(1) (GNOME), filelight(1) (KDE), xdiskusage(1) (X tool calling du(1) itself), or xdu(1) (X tool reading du(1) output from STDIN). AUTHOR
Unburden Home Dir is written and maintained by Axel Beckert <beckert@phys.ethz.ch> LICENSE
Unburden Home Dir is available under the terms of the GNU General Public License (GPL) version 2 or any later version at your option. Unburden Home Directory May 2012 UNBURDEN-HOME-DIR(1)