shell的课程大纲

这篇博客介绍了Shell编程的基础,包括Shell的种类、学习Shell的原因、学习方法,以及Shell脚本的作用。强调了掌握Linux命令、正则表达式和脚本编写的重要性,还提供了编写和执行Shell脚本的规范和注意事项。
摘要由CSDN通过智能技术生成

**

shell的课程大纲

**

01)Shell基本概述

02)Shell变量定义

03)Shell数值运算

04)Shell流程控制

05)Shell循环语句

06)Shell数组函数

07)Shell内置命令

08)Shell正则表达式

01) shell的基本概述

[root@web01 ~]# echo $-
himBH

h hashall 缓存,命令的路径
i 交互式shell
m 监控
B 大括号扩展
H history

[root@web01 ~]# vim  test.sh
#!/bin/bash
echo   $-
[root@web01 ~]# sh  test.sh
hB

[root@web01 ~]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash

02) shell的种类

[root@web01 ~]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
[root@web01 ~]# echo  $SHELL
/bin/bash

3. 什么是Shell脚本 ?

01)系统的命令堆积在一起,按照顺序执行。

02)特定的格式 + 特定的语法 + 系统的命令 = 文件

03)以.sh为结尾的文件

04) 为什么要学习shell

重复性的工作
自动化的脚本
提高工作效率

05) 如何学好shell编程

01)阅读、模仿、阅读、模仿

02)核心:多练-多思考-再练-再思考-坚持如此循环即可

03)掌握Shell脚本的各种常见语法

04)形成自己的脚本开发风格

05)从简单做起,简单判断,简单循环

06)多模仿、多离开参考资料练习、多思考

07)学会分析问题,逐渐形成编程思维

08)编程变量名字规范,采用驼峰语法表示

09)不要拿来主义,特别针对新手

06) 学习Shell编程需要哪些知识 ?

01)对vim编辑器能熟练使用,熟悉SSH终端及".vimrc"等的配置。

02)要有一定的Linux命令基础,至少掌握80个以上Linux常用命令并能熟练使用。

03)要熟练掌握Linux正则表达式以及三剑客命令(grep、sed、awk)。

04)熟悉常见的Linux网络服务部署、优化、日志分析及排错。

07) Shell脚本能做什么 ?

01)基础配置:系统初始化操作、系统更新、内核调整、网络、时区、SSH优化等。

02)安装程序:LNMP、LAMP、MySQL、Nginx、Redis等。

03)配置变更:Nginx Conf、PHP Conf、MySQL Conf、Redis Conf等。

04)业务部署:Shell配合Git、Jenkins实现自动化部署PHP、Java代码,以及代码回滚。

05)日常备份:MySQL全备 + 增量 + binlog + crond + Shell脚本备份等。

06)信息采集:Zabbix + Shell: 对硬件、系统、服务、网络的监控等。

07)日志分析:ELK:取值->排序->去重->统计->分析等。

08)服务扩容/缩容:Zabbix + Shell
扩容: 监控服务器cpu, 如cpu负载持续80% + 触发动作(脚本)
脚本: 调用api开通云主机->初始化环境->加入集群->对外提供访问

缩容: 监控服务器cpu使用率20%->判断有多少web节点->判断是否超过预设->缩减到对应的预设状态->变更负载的配置

01)脚本放在放在统一的目录

mkdir -p /shell/

02)推荐使用vim编辑器编辑脚本(高亮显示)

03)以.sh为扩展名

04)规范的Shell脚本第一行会指出由哪个程序(解释器)来执行脚本中的内容。
#!/bin/bash 或 #!/bin/sh #如不指定Shell,默认以bash执行。

05)开头的"#!“称为幻数,在执行Shell脚本的时候,内核会根据”#!"后的解释器来确定使用哪个程序解释脚本中的内容。注意:这一行必须在每个脚本顶端的第一行,如果不是第一行则为脚本注释行。

06)附带作者及版权信息。

07)脚本注释:在Shell脚本中,跟在"#"后面的内容表示注释。注释部分不会被执行,仅给人看。注释可以自成一行,也可以跟在命令后面,与命令同行。要养成写注释的习惯,方便自己与他人。最好不用中文注释,因为在不同字符集的系统会出现乱码。

08)成对的符号一次书写完成。

09)循环的格式一次书写完成。

shell 的执行方式

[root@web01 shell]# vim  test.sh
#!/bin/bash
pwd  

#新打开一个shell窗口执行,不需要执行权限

[root@web01 shell]# sh  test.sh 
/shell
[root@web01 shell]# bash  test.sh
/shell

#使用绝对路径或者相对路径执行,需要执行权限。另起一个窗口

[root@web01 shell]# /shell/test.sh
-bash: /shell/test.sh: Permission denied
[root@web01 shell]# ./test.sh
-bash: ./test.sh: Permission denied
[root@web01 shell]# chmod  +x  ./test.sh
[root@web01 shell]# /shell/test.sh
/shell
[root@web01 shell]# ./test.sh
/shell

将脚本内容调用到当前窗口执行

[root@web01 shell]# vim  test.sh
#!/bin/bash
ping  baidu.com
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值