Clean up the code that reads group names in from the command line to
take advantage of the read command's ability to display a prompt. While
we're at it, we should abort the script if the group list encounters
EOF, and we can tighten up some of the other sh-isms too.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
}' doc/group-names.txt
}
-if [ $# -eq 0 ]
-then
-
+if [ $# -eq 0 ]; then
+ prompt="Add to group(s) [other] (separate by space, ? for list): "
while true
do
- echo -n "Add to group(s) [other] (separate by space, ? for list): "
- read ans
- [ -z "$ans" ] && ans=other
- if [ "X$ans" = "X?" ]
- then
+ read -p "${prompt}" ans || exit 1
+ test -z "${ans}" && ans=other
+ if [ "${ans}" = "?" ]; then
echo $(group_names)
else
# only allow lower cases, spaces, digits and underscore in group