diff options
Diffstat (limited to 'bin/aux/addwuser.rc')
-rwxr-xr-x | bin/aux/addwuser.rc | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/bin/aux/addwuser.rc b/bin/aux/addwuser.rc new file mode 100755 index 0000000..9364d39 --- /dev/null +++ b/bin/aux/addwuser.rc @@ -0,0 +1,33 @@ +#!/bin/rc + +if(! ~ $#werc_root 0) + cd $werc_root + +fn usage { + if(! ~ $#* 0) + echo $0: $* >[1=2] + echo 'Usage:' $0 'user_name user_password [groups ...]' >[1=2] + exit usage +} + +if(! test -d etc/users/) + usage 'Run for root of werc installation or set $werc_root' + +user_name=$1 +shift +user_pass=$1 +shift +user_groups=$* + +if(~ $"user_name '' || ~ $"user_pass '') + usage + +mkdir etc/users/$user_name +echo $user_pass > etc/users/$user_name/password + +if(! ~ $#user_groups 0) + for(g in $user_groups) { + mkdir -p etc/users/$g + echo $user_name >> etc/users/$g/members + } + |