#!/bin/sh
echo '创建管理员用户:'
echo ''
while :
do
read -p '用户名:' USER_NAME
USER_COUNT=`cat /etc/passwd | grep '^${USER_NAME}:' -c`
if [ $USER_COUNT -ne 1 ]
then
read -p '密码:' USER_PWD
useradd $USER_NAME
echo $USER_PWD | passwd $USER_NAME --stdin
echo '创建完成!'
break
else
echo '用户已存在!'
echo ''
fi
done
输入一个已存在
的用户名 hahaha $USER_COUNT -ne 1
返回 0
但在控制台执行
cat /etc/passwd | grep '^hahaha:' -c
返回 1
请问应该怎么写呢?
你可以在输入后打印一下
echo ${USER_NAME}
看是不是符合你的预期输入