第1章 了解shell
shell是一个由c语言编写的程序 他是用户使用linux系统的桥梁 shell既是一种命令语言 又是一个程序设计语言
shell是Linux和用户对话的一个命令解释器 用户利用软件服务命令 通过shell来解释 传输给linux核心
linux系统的底层基础应用软件都涉及shell脚本的内容 每一个合格的运维人员都要熟练掌握shell脚本语言
小结: shell脚本能加快运维人员的工作效率
1.1 什么是shell
- 什么是shell
shell 是一个命令解释器 用于解释执行用户输入的命令/程序 是用户和Linux交互的桥梁
- 什么是shell脚本
当一些程序或命令不在命令行执行 而是输入到一个文件内统一执行 我们就可以称之为shell脚本
1.2 shell对比其他语言的优势
shell在处理底层工作方面 例如: 初始化 备份 启动/停止 及监控报警等日常运维工作 用shell会简单 方便很多 , 而同样的工作用其他语言编写代码就会复杂很多 因此 shell是企业中linux自动化运维不可代替的工具
1.3 shell编程
掌握shell的常见语法 if判断 for循环 while循环 case语句 控制命令 continue break exit等 起码能看懂别人写的shell脚本
初学者要多看别人写好的代码并理解其意义
多模仿 多练习 多思考
多找一些脚本 例子 看多了 写多了 也就懂得多了
- 锻炼编程思维
在编写程序和脚本时 先将需求理解 然后吧大的需求进行分解 逐步形成小的程序或模块 想明白需求 把需求画出来 不要拿来就做 多和主管沟通 多解决实际问题
1.4 shell编程所需基础
熟练使用vim/vi编辑器 开发shell脚本最常用的是vim编辑器 熟练的使用可以让开发shell事半功倍
熟练使用linux常用的命令 和其他开发语言不同 shell脚本语言很少有可以直接调用的外部函数库 但是我们可以把Linux的命令看作shell的函数库
熟练使用三剑客命令及正则表达式 三剑客可以说是Linux的核心命令 当中awk是最重要的
1.5 shell脚本规范
- 第一行加命令解释器
!/bin/bash
- 脚本中不要使用中文
因为在Linux中不支持中文 我们能看到中文是远程连接工具的作用
脚本存放在固定目录下 方便查找 备份等操作
脚本扩展名为.sh
成对的符号 语句要一次性书写出来
加上作者及版权信息 方便别人使用出现故障能够联系上你
ps 我们可以在.vimrc文件修改编辑信息 把.vimrc移动到家目录生效