]> git.apps.os.sepia.ceph.com Git - xfstests-dev.git/commitdiff
new: clean up the group name input code
authorDarrick J. Wong <djwong@kernel.org>
Fri, 17 Sep 2021 00:39:55 +0000 (17:39 -0700)
committerEryu Guan <guaneryu@gmail.com>
Sun, 26 Sep 2021 13:35:02 +0000 (21:35 +0800)
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>
new

diff --git a/new b/new
index 6b7dc5d4840341a6017c554b52da38457dcbb8fb..ea7cf25ead01ef82d68fea1a4fbdcdde345264ab 100755 (executable)
--- a/new
+++ b/new
@@ -91,16 +91,13 @@ group_names() {
        }' 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