2019.03.13_10:00-11:30_mage_Linux_log
2019.03.13_10:00-11:30_mage_Linux_log
今天开始使用markdown记录linux学习日志
之前的学习记录已单独上传在linux学习日志前传!
练习
写一个脚本,完成以下任务
1.添加5个用户,user1,user2,…,user5
2.每个用户的密码同用户名,而且要求添加密码后不显示passwd命令的执行结果信息;
3.每个用户添加完成后,都要显示用户某某已经成功添加
useradd user1
echo “user1” | passwd --stdin user1 &> /dev/null
echo “Add user1 successfully.”
条件判断:
如果用户不存在,添加用户,给密码并显示添加
否则,显示用户已经存在,没有添加
bash中如何实现条件判断?
条件测试类型
整数测试
字符测试
文件测试
条件测试的表达式:常用三种
[ expression ] 判断结果真与假 //中括号与单词有空格
[[ expression ]]
test expression
整数比较:(双目操作)
-eq:测试两个整数是否相等,相等为真,否则(不等)为假 eg:$A -eq $B
-ne:测试两个整数是否不等:不等为真,否则(相等)为假
-gt:测试一个数是否大于另一个数,大于为真,否则(小于或等于)为假
-lt:测试一个数是否小于于另一个数,小于为真,否则(大于或等于)为假
-ge:大于或等于为真
-le:小于或等于为真
命令间的逻辑关系:
逻辑与:&& 如果一个为假,结果一定为假
逻辑或: || 如果一个为真,结果一定为真,短路操作
逻辑与操作图示:
如果user6不存在,就添加user6
!id user6 && useradd user6 // !感叹号取反
或 id user6 || useradd user6
如果/etc/inittab文件的行数大于100,就显示好大的文件;
[ `wc -l /etc/inittab | cut -d’ ’ -f1` -gt 100] && echo “Large file”
如果用户存在,就显示用户已经存在;否则,就添加此用户
id user && echo “user1 exists.” || useradd user1
如果用户不存在,就添加;否则,提示用户存在
!id user && useradd user1 || echo “user1 exists.”
如果用户不存在,就添加,并且设定密码;否则,提示用户存在
!id user && useradd user1 && echo “user1” | passwd --stdin user1 || echo “user1 exists.”
变量名称:
- 只能包含字母、数字、和下划线,并且不能以数字开头;
- 不应该跟系统中已经有的环境变量同名;
- 最好做到见名知意。
练习
1.添加3个用户user1,user2,user3;判断用户是否存在,不存在后添加;
2.添加后,显示新增加了几个用户;
3.最后显示当前系统共有多少用户
写一个脚本,完成以下任务
- 使用一个变量保存一个用户名;
- 删除此变量中的用户,且一并删除其家目录;
- 显示“用户删除完成”类信息