【shell】概述

时间:2023-03-09 16:14:48
【shell】概述

功能简介

 批量自动初始化系统(update,软件安装,时区设置,安全策略...)

  批量自动部署软件(LAMP,LNMP,Nginx,LVS,Tomcat)

 管理应用程序(KVM,集群管理扩容,MySQL,DELLR720批量RAID)

 日志分析处理程序(PV,UV,,grep/awk)

 自动化备份恢复程序(MySQL完全备份/增量备份+Crond)

 自动化管理程序(批量远程修改密码,软件升级,配置更新)

 自动化信息采集及监控程序(收集系统/应用状态信息:CPU,Mem,Disk,Net,TCP Status,Apache,MySQL)

 配合Zabbix信息采集(收集系统/应用状态信息,CPU,Mem,Disk,Net等)

 自动化扩容(增加云主机->业务上线)

编写一个简单的shell程序

创建一个ping01.sh:vim ping01.sh
#!/usr/bin/bash
ping -cl www.baidu.com && echo "www.baidu.com is up" || echo "www.baidu.com is down" 不显示ping的中间过程: #!/usr/bin/bash
ping -cl www.baidu.com %>/dev/null && echo "www.baidu.com is up" || echo "www.baidu.com is down"

调用方式:bash/sh ping01.sh

程序语言执行

C            编译 -- 二进制机器码(CPU X86复杂指令集  Power精简指令集  APM)
Java 编译 -- 字节码(Java虚拟机 JDK)Tomcat/Hadoop --
Shell 解释 -- (/usr/bin/bash)
perl 解释 -- (/usr/bin/perl)
expect 解释 -- (/usr/bin/expect)
Python 分为解释与编译 编译 -- 字节码(Python虚拟机) 解释 -- (/usr/bin/python)

程序是由逻辑和数据组成
两种执行sh的方式
子shell执行(常规执行)
./test.sh 以及 /usr/bin/bash test.sh
 当前shell执行 . test.sh 以及 source test.sh