- 论坛徽章:
- 0
|
“用户+密码”文件/tmp/pass:
代码:
wq111111
za987678
qd6588
脚本yz.sh:
代码:
#!/bin/sh
echo-n"Username:"
readUSERNAME
stty-echo
echo-n" assword:"
readPASSWORD
sttyecho
echo
REALPASS=`sed-n/$USERNAME/p/tmp/pass|cut-d''-f2`
awk'{print$1}'/tmp/pass|egrep-q$USERNAME#某些时候egrep可用grep代替
if[$?-ne0];then
echo$USERNAME"DOESNOTEXIST!"
elif[$PASSWORD=$REALPASS];then
echo"这里做你想做的事"
else
echo"BADPASSWORD!"
fi
请教一下,用户怎么能够修改自己的密码,并保存在/tmp/passwd中,在/etc/passwd中增加新用户(当然用vi编辑除外),单独写一个小的shell程序吗?请指教,谢谢!!!!!
此程序还存在如下问题:
1。比如:用户名称为:wqlp,密码:111111,我输入用户名称:w,密码:111111,同样可以通过用户验证,如果用户名称我输入“wqlp"中的任何一个字母,只要密码输入正确,用户验证都可以通过,这样好象有点问题,但我输入用户名称:w,对应的密码输错了,那么用户验证则不能通过。
2。如果用户名和密码我都不输,则屏幕提示:
sed:FirstREmaynotbenull
egrep:nopatterngiven
egrep[-c|-l|-q][bhinsvx][-epattern_list][-fpattern_file][pattern_list][file...], |
|