编写一个Shell scripts,要求根据屏幕提示输入用户名和密码,如果用户名和密码正确(用户名和密码以文件的形式保存在当前目录下,每行为一个用户的用户名和密码,格式如下图所示)。则在屏幕上打印“欢迎您,XXX先生/女士”。否则显示“用户名或密码错误!”后退出。
时间: 2024-02-05 20:14:21 浏览: 39
以下是一种可能的实现方法:
```bash
#!/bin/bash
# 读取用户名和密码
read -p "请输入用户名:" username
read -s -p "请输入密码:" password
echo
# 检查用户名和密码是否正确
if grep -q "^${username}:${password}" users.txt; then
# 提取姓名并打印欢迎信息
name=$(grep "^${username}:" users.txt | cut -d: -f3)
echo "欢迎您,${name}先生/女士!"
else
echo "用户名或密码错误!"
exit 1
fi
```
其中,`read` 命令用于读取用户输入,`-p` 选项表示提示信息,`-s` 选项表示不回显密码。`grep` 命令用于在文件中查找匹配的文本,`-q` 选项表示静默模式,只返回匹配结果而不输出。`cut` 命令用于提取文本中的字段,`-d` 选项表示分隔符,`-f` 选项表示字段编号。最后,`exit` 命令用于退出脚本并返回状态码。
相关问题
编写一个Shell scripts,要求根据屏幕提示输入用户名和密码,如果用户名和密码正确用户名和密码以文件的形式保存在当前目录下,每行为一个用户的用户名和密码,格式如下图所示。则在屏幕上打印“欢迎您,XXX先生/女士”。否则显示“用户名或密码错误!”后退出。
以下是一个简单的Shell脚本,可以实现您的需求:
```
#!/bin/bash
# 提示用户输入用户名和密码
read -p "请输入用户名:" username
read -s -p "请输入密码:" password
echo
# 检查用户名和密码是否正确
if [ "$username" == "admin" ] && [ "$password" == "123456" ]; then
# 在当前目录下创建文件并保存用户名和密码
echo "$username $password" > login.txt
# 打印欢迎信息
echo "欢迎您,$username 先生/女士!"
else
# 打印错误信息并退出
echo "用户名或密码错误!"
exit 1
fi
```
在上面的脚本中,我们使用了`read`命令来提示用户输入用户名和密码,其中`-s`选项可以让用户输入密码时不显示输入内容。然后我们使用`if`语句来检查用户名和密码是否正确,如果正确则将用户名和密码保存在`login.txt`文件中,并打印欢迎信息。如果不正确则打印错误信息并使用`exit`命令退出脚本。
编写一个Shell scripts,要求根据屏幕提示输入用户名和密码,如果用户名和密码正确(用户名是Linux,密码是123456),用户名和密码以文件的形式保存在当前目录下,每行为一个用户的用户名和密码,格式正确,则在屏幕上打印“欢迎您,Linux先生/女士”。否则显示“用户名或密码错误!”
以下是一个简单的Shell脚本,可以实现您的需求:
```
#!/bin/bash
echo "请输入用户名:"
read username
echo "请输入密码:"
read password
if [[ $username == "Linux" && $password == "123456" ]]; then
echo "$username $password" >> userinfo.txt
echo "欢迎您,Linux先生/女士"
else
echo "用户名或密码错误!"
fi
```
脚本会提示用户输入用户名和密码,然后将输入的用户名和密码与预设的值进行比较。如果相等,则将用户名和密码写入一个名为 `userinfo.txt` 的文件中,并输出欢迎信息。否则,输出错误信息。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)