2、编写shell 程序,输入某一密码,判断此密码与某文件中的密码是否一致,如果是,输出“yes”,否则,输出“no”,密码连续输入错误3次则退出。 (附加:增加修改密码的功能) 密码文件名为password. txt,其内容为password: 123456。
时间: 2024-09-23 10:06:05 浏览: 40
你可以创建一个简单的bash shell脚本来完成这个任务。首先,我们需要打开文件并检查输入的密码。这里是一个基本的示例:
```sh
#!/bin/bash
# 定义文件路径和初始尝试次数
FILE="password.txt"
TRIES=0
while true; do
read -p "请输入密码: " PASSWORD
letTRIES++
# 检查密码是否与文件中的匹配
if grep -q "^password: $PASSWORD" "$FILE"; then
echo "yes"
break
else
if [ $TRIES -eq 3 ]; then
echo "连续输入错误3次,程序已退出."
exit 1
fi
echo "密码错误,请重试."
fi
done
# 添加修改密码功能
echo "是否需要修改密码? (y/n)"
read MODIFY_PASSWORD
if [ "$MODIFY_PASSWORD" = "y" ]; then
echo "请输入新的密码:"
read NEW_PASSWORD
sed -i "s/password: .*/password: $NEW_PASSWORD/" "$FILE"
echo "密码已更新."
else
echo "未选择修改密码."
fi
```
在这个脚本中,我们使用`grep`命令来查找密码是否存在文件中,如果找到了就显示"Yes",如果没有并且达到三次尝试次数就退出。最后询问用户是否需要修改密码,并替换文件中的旧密码。
注意:运行此脚本前确保你有权限读取和编辑该文件,否则需要相应的权限设置。
阅读全文