Как мне реализовать удаление нескольких пользователей в моем коде. Поэтому у меня есть возможность в качестве администратора удалить нескольких пользователей за 1 команду:

#!/bin/bash
echo "SELECT $OPTION"   
echo "-------------"   
echo "1- Create username"   
echo "2- Create password"   
echo "3- Delete username"   
echo "4- Exit"   
read -p "enter option 1 2 3 or 4:" option   
case $option in      
1) read -p "Enter username:"        
 adduser $REPLY && echo "Username successfully entered"   ;;      
2) passwd && "Password successfully entered" ;;      
3) read -p "Enter user to be deleted: "         
deluser $REPLY && echo "User deleted"  ;;      
4) exit  ;;         
esac

Я получил этот код для удаления нескольких пользователей

read -p "Enter users to be deleted: "  #whitespace-separated list of usernames to be deleted     
for USER in $REPLY; do         
  deluser $USER && echo "User $USER deleted"       
done;;

Но как мне реализовать это в моем коде, использовать ли цикл while, может кто-нибудь сказать мне, что мне нужно сделать.

1 ответ1

0

Цикл read и for может быть включен в оператор case как вы его показываете. Здесь я показываю это в качестве замены для case 3.

case ...
...
3) read -p "Enter users to be deleted: "  #whitespace-separated list of usernames to be deleted     
    for USER in $REPLY; do         
        deluser $USER && echo "User $USER deleted"       
    done;;

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .