Shell(二)入门到复杂 脚本实例(计算器)

Shell变量详解

什么是变量?为什么要使用变量?

各种shell环境中都使用到了“变量”的概念,shell变量用来存放系统和用户需要使用的特定参数(值),而且这些参数可以根据用户的设置或系统环境的变化而相应的变化。通过使用变量,shell程序可以提供更加便捷灵活的功能,实用性和灵活性更强。

常见的shell变量类型包括自定义变量,环境变量,预定义变量,位置变量。

最简单的一个 开机登录提示脚本

备份脚本

Mysql 备份脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash
#mysql 数据库简单备份
#1.定义数据连接目标库信息
MY_USER="users"
MY_PASS="abc123"
MY_HOST="192.168.129.2"
MY_denglu="-u $MY_USER -p$MY_PASS -h $MY_HOST"
MY_DB1="test"
#2.定义备份时目录,时间,文件名
BF_DIR="/opt/mysql_bak"
BF_CMD="/usr/local/mysql/bin/mysqldump/"
BF_TIME='date +%Y%m%d-%H%M'
NAME="$MY_DB1-$BF_TIME"
#导出脚本 进行压缩
$BF_CMD $MY_denglu --databases $MY_DB1 > $BF_DIR/test.sql

vsftp脚本

查看脚本

最关键的一个

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/bin/bash
  #监控磁盘,内存,CPU使用情况
  3 DUG=$(df -h|grep "/$"|awk '{print $5}'|awk -F%'{print $1}')   //切割出根系统占用情况
  4 IDLE=$(mpstat|tail-1|awk '{print $11}'|awk -F. '{print $1}')     //切割出CPU使用情况
  5 CUG=`expr100- $IDLE`
  6 USED=$(free|grep"cache:"|awk '{print $3}')                // 切割出内存使用情况
  7 TOTAL=$(free|grep"Mem:"|awk'{print $2}')
  8 MUG=`expr $USED \*100 / $TOTAL`
  #磁盘占用>90% CPU使用>80% 内存使用>90% 告警邮件通过mail发送给管理员
 10 alert="/tmp/"alert.txt"         变量
 11if [ -e $alert ]                      如果这个 文件存在则
 12 then
 13    mail -s"Host Alert"monitor@benet.com 发送mail给管理员
 14 else
 15    touch$alert    如果不存在则重新建立文件
 16 fi
 17 if[$DUG-gt 90]             如果系统磁盘占用空间大于90% 那么就打印 DUG-ge90  追加到 alert文件里
 18 then
 19    echo "DUG -ge90">>$alert
 20 fi
 21 if[ $CUG-gt 80 ]               如果CPU占用空间大于80% 那么就打印 CUG-ge80  追加到 alert文件里
 22 then
 23    echo"CUG -ge80">>$alert
 24 fi
25 if [ $MUG -gt 80 ]     如果内存占用空间大于80% 那么就打印 MUG-ge80  追加到 alert文件里
26 then
27     echo "MUG -ge80" >> $alert
28 fi

本文转自 cs312779641 51CTO博客,原文链接:http://blog.51cto.com/chenhao6/1230337

Shell(一) 入门到复杂 自己做的各种脚本实例与解释相关推荐

  1. shell编程入门 linux解释器原理,Shell编程入门Linux解释器原理详细介绍 使用Shell进行工作的人们对.doc...

    Shell编程入门Linux解释器原理详细介绍 使用Shell进行工作的人们对 Shell编程入门:Linux解释器原理详细介绍使用Shell进行工作的人们对Unix/Linux下的Shell编程都很 ...

  2. [转载]Shell十三问(入门与提高)

    原文地址:Shell十三问(入门与提高)作者:snowdrop Shell十三问--ChinaUnix论坛精华整理(本文来自Lkydeer对ChinaUnix论坛精华的整理) 原创 ChinaUnix ...

  3. python编程可以用来干嘛-入门学习python可以用来做什么?

    原标题:入门学习python可以用来做什么? Python技术可做web开发.Python技术可做数据分析.Python技术可做人工智能.将Python用于机器学习,流行的Python机器学习库和框架 ...

  4. Shell 编程入门

    走进 Shell 编程的大门 为什么要学Shell? 学一个东西,我们大部分情况都是往实用性方向着想.从工作角度来讲,学习 Shell 是为了提高我们自己工作效率,提高产出,让我们在更少的时间完成更多 ...

  5. Shell编程入门基础上

    前言 为什么学 Shell Shell 脚本语言是实现 Linux/UNIX 系统管理及自动化运维所必备的重要工具, Linux/UNIX 系统的底层及基础应用软件的核心大都涉及 Shell 脚本的内 ...

  6. 一文带你 GNN 从入门到起飞,做一个饭盆最稳 GNN 饭人!

    摘要:本文介绍了图神经网络在学界和业界的发展情况,并给出了图神经网络的基本概念与表示形式,总结了图神经网络的变体,最后介绍了华为云图神经网络框架. 本文分享自华为云社区<干饭人,干饭魂,搞懂图神 ...

  7. 中软国际软件测试半年工资,软件测试入门的要点和做软件测试目的(广州中软国际)...

    软件测试入门的要点和做软件测试目的 现在很多人都愿意寻找做测试,尤其是适合于女生,因为测试入门不难,学起来容易.而且目前市场需求很好,工资较高,是很多女生毕业后的首选工作.相信不少学计算机专业的老师, ...

  8. Linux编程视频课程Shell从入门到精通(完整版)

    课程目标: 本套Linux编程视频课程适用于初学者以及各类运维自动化人员,我们可以通过本次系列的shell编程技术学习,掌握企业里面的运维编程必备脚本编程,同时掌握企业运维到底要求会什么东西,有哪些是 ...

  9. linux bash文件,Shell 点文件可以为你做点什么 | Linux 中国

    原标题:Shell 点文件可以为你做点什么 | Linux 中国 了解如何使用配置文件来改善你的工作环境. -- H.waldo Grunenwald 不要问你可以为你的 shell 点文件dotfi ...

  10. OpenGL入门暨用C#做个3D吞食鱼(一)第一人称视角的实现

    OpenGL入门暨用C#做个3D吞食鱼(一)第一人称视角的实现 废话少说先上图: 图表 1第一人称视角效果图 源代码在文末. 为了学OpenGL,尝试各种代码示例是不错的选择.但是我就经常因为视角不合 ...

最新文章

  1. Linux下如何执行Shell脚本
  2. Elasticsearch、Logstash、Kibana搭建统一日志分析平台
  3. redis多服务器共享_【数据库】Redis(二)持久化及事务
  4. html给按钮设置背景,设置按钮背景图片(HTML-CSS)
  5. Parse Too complex in xxxx.cpp --------source insight
  6. OpenFOAM各版本说明介绍
  7. .NET Core 首例 Office 开源跨平台组件(NPOI Core)
  8. 【数据库原理及应用】经典题库附答案(14章全)——第十二章:数据库技术新发展
  9. 的使用_面部精华使用方法和使用步骤;
  10. 【2016年第4期】研究(国家自然科学基金项目成果集萃)导读
  11. Andros系列排爆机器人原理_中国製造2025系列M之二:高档数控机床和机器人
  12. 3. 请列举java ee的主要新特性_JavaEE考试题
  13. Gephi教程:使用Gephi绘制动态网络的三种方法
  14. jdk10和jdk8共存和快速切换
  15. 关于pthread_cancel()的运用,取消点的理解
  16. Linux虚拟网络设备之bridge(桥)
  17. Mac苹果电脑怎么快速切换应用?
  18. Scrum板与Kanban如何抉择?kdliihoap板与按照xhvrcr
  19. haml VS erb
  20. linux环境下GXL软件的安装

热门文章

  1. mysql图形化界面MySQL_Workbench
  2. J2ME-CLDC/MIDP资源
  3. page compaction原理
  4. iptables 从入门到应用
  5. AndroidOpenCV摄像头预览旋转90度问题
  6. Linux线程间死锁分析
  7. linux下proc文件的读写(部分转载)
  8. allwinner h6 armv8 SylixOS 启动分析
  9. idea每次都要配置tomcat_午饭收藏夹里的c位石锅拌饭,每次来到都要等位......
  10. java 十进制与二进制,八进制,十六进制之间的转换