编写一个脚本login.sh,要求从键盘上输入用户名,判断系统是否存在该用户,并给出提示:(思路如下) A.从键盘上输入用户名 B.使用管道,先读取/etc/passwd,然后用grep筛选如上用户名,并将筛选结果赋值给result C.判断result是否为空,如果为空,输出用户名is not exist!,否则,输出用户名 is exist!
时间: 2023-12-25 14:02:55 浏览: 78
可以尝试使用以下脚本实现:
```bash
#!/bin/bash
# 从键盘上输入用户名
read -p "请输入用户名:" username
# 读取/etc/passwd并筛选出该用户
result=$(cat /etc/passwd | grep "^$username:")
# 判断筛选结果是否为空
if [ -z "$result" ]; then
echo "用户名 $username 不存在!"
else
echo "用户名 $username 存在!"
fi
```
脚本的执行流程如下:
1. 首先从键盘上读取用户名。
2. 然后使用管道,将/etc/passwd中的所有内容传递给grep命令,并使用正则表达式筛选出符合用户名的行,将结果赋值给变量$result。
3. 判断$result是否为空,如果为空,则输出该用户不存在的提示信息,否则输出该用户存在的提示信息。
注意,脚本需要以可执行权限运行,可以使用chmod命令添加可执行权限:
```
chmod +x login.sh
```
然后可以直接执行脚本:
```
./login.sh
```
阅读全文