#!/bin/sh # mkhome -- make user directories. # Author: Noah Friedman # Created: 1993-03-06 # Public domain # $Id: mkhome,v 1.3 1995/08/10 23:37:00 friedman Exp $ PATH="/usr/local/bin:/etc:/usr/etc:/usr/local/etc:${PATH}" export PATH umask 022 verbose= case "$1" in -x ) verbose=-x shift ;; esac case $# in 0 ) echo 'Usage: mkhome [user1] {user2} {...}' 1>&2 exit 1 ;; esac re_namelist="^$1:" shift for name in ${1+"$@"} ; do re_namelist="${re_namelist}\|^${name}:" done sedscript='/'"$re_namelist"'/{ s/^[^:]*:[^:]*:\([^:]*\):\([^:]*\):[^:]*:\([^:]*\):.*/mkdir '\''\3'\'' ; chown '\''\1.\2'\'' '\''\3'\'' ;/ s/\n//g s/^ *//g p }' if grep '^+:' /etc/passwd > /dev/null 2>&1 ; then ypcat passwd | sed -n -e "$sedscript" | sh $verbose else sed -n -e "$sedscript" /etc/passwd | sh $verbose fi # eof