电子说
由于脚本案例太多,在此仅展示部分,完整版领取方式请见文末
249个拿来即用的shell脚本!
这249个Shell脚本共147页,目录清楚,一键搜索定位,代码清晰可复制,电子版可以随时拿来练习提升,是学习、提升、面试必备精品。
1、通过位置变量创建Linux系统账户及密码
#!/bin/bash # 通过位置变量创建 Linux 系统账户及密码 #$1 是执行脚本的第一个参数,$2 是执行脚本的第二个参数 useradd "$1" echo "$2" | passwd ‐‐stdin "$1"
2、备份日志
#!/bin/bash # 每周 5 使用 tar 命令备份/var/log 下的所有日志文件 # vim /root/logbak.sh # 编写备份脚本,备份后的文件名包含日期标签,防止后面的备份将前面的备份数据覆盖 # 注意 date 命令需要使用反引号括起来,反引号在键盘键上面 tar -czf log-`date +%Y%m%d`.tar.gz /var/log # crontab ‐e #编写计划任务,执行备份脚本 00 03 * * 5 /root/logbak.sh
3、输入三个数并进行升序排序
#!/bin/bash # 依次提示用户输入 3 个整数,脚本根据数字大小依次排序输出 3 个数字 read -p "请输入一个整数:" num1 read -p "请输入一个整数:" num2 read -p "请输入一个整数:" num3 # 不管谁大谁小,最后都打印 echo "$num1,$num2,$num3" # num1 中永远存最小的值,num2 中永远存中间值,num3 永远存最大值 # 如果输入的不是这样的顺序,则改变数的存储顺序,如:可以将 num1 和 num2 的值对调 tmp=0 # 如果 num1 大于 num2,就把 num1 和和 num2 的值对调,确保 num1 变量中存的是最小值 if [ $num1 -gt $num2 ];then tmp=$num1 num1=$num2 num2=$tmp fi # 如果 num1 大于 num3,就把 num1 和 num3 对调,确保 num1 变量中存的是最小值 if [ $num1 -gt $num3 ];then tmp=$num1 num1=$num3 num3=$tmp fi # 如果 num2 大于 num3,就把 num2 和 num3 对标,确保 num2 变量中存的是小一点的值 if [ $num2 -gt $num3 ];then tmp=$num2 num2=$num3 num3=$tmp fi echo "排序后数据(从小到大)为:$num1,$num2,$num3"
4、点名器脚本
#!/bin/bash # 编写一个点名器脚本 # 该脚本,需要提前准备一个 user.txt 文件 # 该文件中需要包含所有姓名的信息,一行一个姓名,脚本每次随机显示一个姓名 while : do #统计 user 文件中有多少用户 line=`cat user.txt |wc ‐l` num=$[RANDOM%line+1] sed -n "${num}p" user.txt sleep 0.2 clear done
5、对100以内的所有正整数相加求和(1+2+3.....+100)
#!/bin/bash # 对 100 以内的所有正整数相加求和(1+2+3+4...+100) #seq 100 可以快速自动生成 100 个整数 sum=0 for i in `seq 100` do sum=$[sum+i] done echo "总和是:$sum"
6、统计当前Linux系统中可以登录计算机的账户有多少个
#!/bin/bash # 统计当前 Linux 系统中可以登录计算机的账户有多少个 #方法 1: grep "bash$" /etc/passwd | wc -l #方法 2: awk -f: '/bash$/{x++}end{print x}' /etc/passwd
8、打印各种格式的时间
#!/bin/bash # 打印各种时间格式 echo "显示星期简称(如:Sun)" date +%a echo "显示星期全称(如:Sunday)" date +%A echo "显示月份简称(如:Jan)" date +%b echo "显示月份全称(如:January)" date +%B echo "显示数字月份(如:12)" date +%m echo "显示数字日期(如:01 号)" date +%d echo "显示数字年(如:01 号)" date +%Y echo "显示年‐月‐日" date +%F echo "显示小时(24 小时制)" date +%H echo "显示分钟(00..59)" date +%M echo "显示秒" date +%S echo "显示纳秒" date +%N echo "组合显示" date +"%Y%m%d %H:%M:%S"
更多内容展示
上下滚动查看更多,仅展示部分内容
Shell脚本是自动化运维的关键组成部分,虽然简简单单几十行代码,但可是蕴藏着巨大的能量和智慧,还是很值得运维朋友学习的。
所有资料已经打包好了,想要提升的同学请务必拿走学习!
而且,这份资料不是扫描版的,都是清晰可见的,非常便于我们学习:
全部0条评论
快来发表一下你的评论吧 !