shell脚本初级教学(从基本脚本开始学起)
admin
2023-07-28 14:00:21
0

shell脚本的意义就在于实现以后的自动化运维,Linux其实也是基于shell脚本的
所以我今天给大家教两个简单的脚本,并且解释.
第一个抽奖脚本:
思路:首先创建一个vim文件
[root@server0 ~]# vim /root/choujiangjiaoben.sh // (sh结尾是给自己一个是shell脚本的注释)

#!/bin/bash // (以shell脚本写的都是以这个开头,并没有为什么,别多想了,老哥..)
read -p '请输入1-10之间的一个号码:' num1 // (read -p 代表在脚本执行到这里的时候暂停 num1是各户端需要输出的数字,你也可以随笔命名 但是一定要和后面的 $num1 一致
num2=$(echo $RANDOM % 10 | bc) //(一种数学上的东西 RANDOM代表出现一个随机数 % 10 是让这个数小于10 |bc 是管道给计算机
if [ $num1 -eq $num2 ];then //意思就是客户端输出的结果等于系统随机的数字 假如相等则输出 -eq(等于)
echo 恭喜您,中奖了
else //意思是输出结果不相等的话 则输出下面的内容
echo 谢谢惠顾!
echo $num2 // 最后两条是给客户端一个反馈
fi // (然后以fi结尾,这个也没有为什么,不要多想...)
~

验证:chmod +x /root/choujiangjiaoben.sh
[root@server0 ~]# vim /root/choujiangjiaoben.sh
[root@server0 ~]# /root/choujiangjiaoben.sh
请输入1-10之间的一个号码:1
谢谢惠顾!
2

第二个是创建用户的脚本,都是基础入门脚本类型了;

用户输入一个用户名,判断用户是否存在
如果存在 输出用户/etc/passwd相应一行
如果不存在 则创建该用户

[root@server0 ~]# vim /root/6.sh

read  -p  '请输入一个用户名:'    user
id  $user &> /dev/null         //判断是否有这个文件名  并且把输出结果丢掉,客户端就不会看到了
if  [  $? -eq 0 ];then          //$?=0的话代表前一个输出结果正确 ,就是已经拥有了这个用户
     grep $user /etc/passwd    //输出这个用户的基本信息
 else      //如果输出结果是1的话就代表并没有这个用户
      useradd $user      //那么为这个客户端创建这个用户
      echo $user 创建成功
 fi 

验证:
[root@server0 ~]# chmod +x /root/chuanjianyonghu.sh
[root@server0 ~]# /root/chuanjianyonghu.sh
请输入一个用户名xiao
xiao 创建成功
[root@server0 ~]#

相关内容

热门资讯

浙江宣传:“走个面儿”咋就没面... “咱北京两千多万人口,您受累,您走个面儿,把这第一波的票房带起来,咱就有了。”某知名导演的新片首映礼...
辞职声明仅95秒遭质疑,韩国队... 【环球时报综合报道】美加墨世界杯小组赛出局后,韩国队主教练洪明甫当地时间28日在墨西哥的韩国队大本营...
美媒爆料:美军第五舰队总部遭伊... 据美国《华尔街日报》27日报道,其通过对卫星图像、社交媒体视频和五角大楼记录的分析发现,今年2月底至...
英国智库给菲律宾GDP增速“浇... 【环球时报特约记者 叶满】英国经济研究机构凯投宏观发布的最新一期《亚洲经济展望》报告(以下简称“报告...
欧洲持续高温,有华人用冰箱降温... 连日来,欧洲多国迎来罕见极端高温天气,法国、德国、意大利等地气温持续飙升,部分地区突破40摄氏度。受...
伊副外长强调船只须按“伊朗线路... 伊朗外交部副部长加里巴巴迪当地时间29日晚间在接受采访时强调,所有船只均须按照“伊朗线路”通过霍尔木...
委内瑞拉强震已致1719人死亡 当地时间29日,委内瑞拉全国代表大会主席罗德里格斯通报,地震已造成该国1719人死亡,5034人受伤...
铋晟新材料申请氯氧化铋基复合材... 国家知识产权局信息显示,江苏铋晟新材料有限公司申请一项名为“一种氯氧化铋基复合材料及其制备方法和用途...
韩国政府将投资千万亿韩元于AI... 韩国总统李在明29日在总统府青瓦台主持召开会议,公布总额超千万亿韩元的半导体、物理人工智能(AI)和...
以色列防长称以伊可能随时再起冲... △卡茨(资料图)据以色列方面29日消息,以国防部长卡茨当天表示,鉴于复杂的安全局势和在黎巴嫩的军事行...