slitaz-dev-tools view tazu/tazu @ rev 238

tazwikiss: add min, max, cnt
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sun Feb 22 11:10:22 2015 +0100 (2015-02-22)
parents
children 16cb64fb7e17
line source
1 #!/bin/sh
2 #
3 # TazU - SliTaz Users account utility
4 #
5 # Copyright 2014 (C) SliTaz GNU/Linux - BSD License
6 # Author: Christophe Lincoln <pankso@slitaz.org>
7 #
8 . /lib/libtaz.sh
9 check_root
11 authfile="/var/lib/slitaz/auth/people"
12 people="/var/lib/slitaz/people"
13 user="$1"
15 #
16 # Functions
17 #
19 usage() {
20 cat << EOT
22 Usage: $(basename $0) [user|command] [--option]
24 Commands:
25 count Count all users
26 list List all users
28 Options:
29 --admin Make user admin
30 --del Delete a user
32 EOT
33 }
35 no_account() {
36 echo "No user account for: $user"
37 }
39 #
40 # Commands
41 #
43 case "$1" in
44 "") usage ;;
45 count)
46 echo -n "Users: "
47 colorize 34 "$(ls $people | wc -l)" ;;
48 list)
49 # List all users
50 newline
51 boldify "SliTaz users list"
52 separator
53 for user in $(ls $people)
54 do
55 . $people/$user/account.conf
56 echo -n "$(colorize 34 "$user")"
57 echo -e "\\033[16G${NAME}"
58 done
59 separator && newline ;;
60 *)
61 # Handle general: --options
62 case " $@ " in
63 *\ --admin\ *)
64 # Admin user
65 if fgrep -q ADMIN_USER= ${people}/${user}/account.conf; then
66 echo -n "User is already admin: " && colorize 34 "$user"
67 else
68 echo -n "Adding $user to admin users..."
69 echo 'ADMIN_USER="yes"' >> ${people}/${user}/account.conf
70 status
71 fi ;;
73 *\ --del\ *)
74 # Delete a user
75 if [ -d "${people}/${user}" ]; then
76 echo -n "Deleting user: $(colorize 34 "$user")"
77 rm -rf "${people}/${user}"
78 sed -i "/^${user}:/"d $authfile
79 status
80 else
81 no_account
82 fi ;;
84 *)
85 # Show user info
86 if [ -d "${people}/${user}" ]; then
87 newline
88 echo "$(boldify "User:") $(colorize 34 "$user")"
89 separator
90 cat $people/$user/account.conf | grep "="
91 separator && newline
92 else
93 no_account
94 echo ${people}/${user}
95 fi ;;
96 esac ;;
97 esac
99 exit 0