shell 脚本应用《六》模拟添加用户删除用户
admin
2023-03-11 20:42:14
0
实现通过传参的方式往/etc/user.conf里添加用户
1)命令用法
2)传参要求:
如果参数 -add ,表示添加用户 -del 删除用户 -search 查找用户
3)如果有同名用户则不能添加,没有用户不需删除,查找删除添加有提示
4)其他用户没有修改删除/etc/user.conf

实践脚本

#!/bin/sh
#
#判断文件是否存在
#
Path=/etc/user.conf
if [ ! -f "$Path" ];then
touch $Path
fi
chmod 644 $Path

#判断是否有参数

if [ 2 -ne $# ];then
echo "USER: sh adduser {-add|-del|search} username"
exit 1
fi

Age=$1
User=$2
if [ 0 -lt $(echo "$User"|grep -E "[^a-z,A-Z,0-9,_]"|wc -l) ];then
echo "The age format is error"
exit 2
fi
#查找用户是否存在
funCheckUser() {
check=$(grep -w "$User" $Path|wc -l)
if [ $check -eq 0 ];then
return 0
else
return 1
fi
}
#添加用户
funAddUser() {
funCheckUser
if [ $? -eq 0 ];then
echo "$User" >> $Path
else
echo "The user is having"
exit 3
fi
}
funDelUser() {
funCheckUser
if [ $? -eq 0 ];then
echo "The $User no having"
else
sed -ri /^$User$/d $Path
echo "The $User del "
fi
}
#搜索用户是否存在
funSearch() {
funCheckUser
if [ $? -eq 0 ];then
echo "NO user match"
else
echo "$User is having"
fi
}
case $Age in
-add)
funAddUser
;;
-del)
funDelUser
;;
search)
funSearch
;;
*)
echo "USER: sh adduser {-add|-del|search} username"
;;
esac

注:grep -w 精确匹配

相关内容

热门资讯

苏巧慧阵营影射李四川家族涉黑,... 海峡导报综合报道 新北市长选战硝烟渐起,身处苏巧慧阵营的新北市议员翁震州发文质疑李四川家族在小琉球做...
红场阅兵后,普京同军官握手致意 据凤凰卫视报道,5月9日,俄罗斯胜利日阅兵接近尾声,普京与军官一一握手致意。
车间里走出“准工程师”——黄河... 3500元项目津贴,三个真实项目研发经历,一份实习期月薪8000多元的录用通知——这是工学部2022...
狱中一年瘦脱相,被释放的巴勒斯... 曾为巴勒斯坦媒体工作的记者阿里·萨穆迪在以色列监狱被关押一年后,于4月30日获释。获释当天,萨穆迪的...
俄罗斯红场阅兵战士齐呼乌拉 当地时间5月9日10时(北京时间15时),俄罗斯纪念卫国战争胜利81周年阅兵在莫斯科红场举行。俄罗斯...
福建一地发现华南虎?当地辟谣:... 近日,福建龙岩漳平市,有网民称,“三重岭发现华南虎”,还配了一张老虎夜间出没山林的图片。这位网民表示...
俄红场阅兵现场播放无人机作战视... 据凤凰卫视报道,当地时间5月9日,俄罗斯胜利日阅兵式在莫斯科举行。阅兵现场,同步播放了无人机作战相关...
5月10日起,北京部分地铁线试... 为服务骑行爱好者携车出行,在借鉴国内先进城市成熟经验、深入开展实地调研的基础上,结合本市轨道交通运营...
解放军主战舰艇编队进入澎湖西南... 5月9日下午,国防部新闻局副局长、国防部新闻发言人蒋斌大校就近期涉军问题发布消息。媒体提到,据报道,...
普京会见三国总统 强化后苏联空... 普京会见三国总统  【普京会见三国总统】莫斯科5月8日电​ 当地时间5月8日,俄罗斯总统普京在莫斯科...