灰常牛皮!280个实用Shell脚本实例,代码清晰拿来就能用!

开源Linux

共 2872字,需浏览 6分钟

 ·

2024-05-27 08:00

Shell 脚本是什么?Shell是一个命令解释器,它的作用是解释执行用户输入的命令及程序等,也就是说,我们用户每输入一条命令,Shell 就会相对应的执行一条命令。当命令或程序语句不在命令行下执行,而是通过一个程序文件来执行时,该程序文件就被称为Shell脚本。
做运维的Shell脚本肯定是必备技能,但如今仍有很多朋友不会撰写Shell脚本。本文整理了280个Shell脚本,代码齐全,开箱即用,灰常牛皮,记得拿好了,下次就不用自己写了。
另外,还准备了一些Shell脚本的编写规范、入门手册、编写指南等资源,建议大家收藏保存起来。
   

*由于脚本案例太多,在此仅展示部分,完整版领取方式请见文末!
   

部分脚本展示


由于脚本案例太多,在此随机展示几个,完整版领取方式请见文末!

1、MySQL 数据库备份单循环

     
#!/bin/bashDATE=$(date +%F_%H-%M-%S)HOST=localhostUSER=backupPASS=123.comBACKUP_DIR=/data/db_backupDB_LIST=$(mysql -h$HOST -u$USER -p$PASS -s -e "show databases;" 2>/dev/null|egrep -v "Database|information_schema|mysql|performance_schema|sys")for DB in $DB_LIST; doBACKUP_NAME=$BACKUP_DIR/${DB}_${DATE}.sqlif ! mysqldump -h$HOST -u$USER -p$PASS -B $DB > $BACKUP_NAME 2>/dev/null;thenecho "$BACKUP_NAME 备份失败!"fidone

2、Nginx 访问日志分析脚本
     
#!/bin/bash# 日志格式: $remote_addr - $remote_user [$time_local] "$request" $status$body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for"LOG_FILE=$1echo "统计访问最多的10个IP"awk '{a[$1]++}END{print "UV:",length(a);for(v in a)print v,a[v]}' $LOG_FILE |sort-k2 -nr |head -10echo "----------------------"echo "统计时间段访问最多的IP"awk '$4>="[01/Dec/2018:13:20:25" && $4<="[27/Nov/2018:16:20:49"{a[$1]++}END{for(vin a)print v,a[v]}' $LOG_FILE |sort -k2 -nr|head -10echo "----------------------"echo "统计访问最多的10个页面"awk '{a[$7]++}END{print "PV:",length(a);for(v in a){if(a[v]>10)print v,a[v]}}'$LOG_FILE |sort -k2 -nrecho "----------------------"echo "统计访问页面状态码数量"awk '{a[$7" "$9]++}END{for(v in a){if(a[v]>5)print v,a[v]}}'

2、从 FTP 服务器下载文件

     
#!/bin/bashif [ $# -ne 1 ]; thenecho "Usage: $0 filename"fidir=$(dirname $1)file=$(basename $1)ftp -n -v << EOF # -n 自动登录open 192.168.1.10 # ftp服务器user admin passwordbinary # 设置ftp传输模式为二进制,避免MD5值不同或.tar.gz压缩包格式错误cd $dirget "$file"EOF




    
部分脚本整合自网络,仅用于学习交流分享,侵删

     
Shell脚本是自动化运维的关键组成部分,虽然简简单单几十行代码,但可是蕴藏着巨大的能量和智慧,还是很值得运维朋友学习的。

所有资料已经打包好了,想要提升的同学请务必拿走学习!

 领取方式:

扫描下方二维码加我好友

备注:【280个shell脚本】

即可100%直接免费领取

仅限前100名免费领取,需要的抓点紧

请务必扫码领取,后台回复不发放!!


浏览 88
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报