Shell脚本编程学习笔记(一)---- shell的作用与基础配置
本文已参与[新人创作礼]活动,一起开启掘金创作之路。
Shell脚本编程
shell脚本=特定的语法+系统的命令
作用:
简化操作步骤,提高效率,减少人为干预,减少系统故障
1.自动化的完成基础配置(系统初始化操作,系统更新,内核调整,网络,时区,SSH优化)
2.自动化安装程序(Mysql等)
3.自动化调整配置文件(Nginx.conf,Mysql.conf)
4.自动化部署业务
5.定期备份恢复程序(Mysql全备+增量+binlog+crond+Shell脚本)
6.自动化信息的采集(Zabbix + Shell)如硬件,系统,服务,网络等信息采集
7.自动化日志收集(ELK){收集 ->存储 -> 展示 ->分析}
8.自动化扩容/缩容(zabbix+shell)
shell script的语法高亮与自动缩进(建议修改一下)
1.修改/etc/profile文件,在末尾加上
vi /etc/profile
export TERM=xterm-color
保存,退出
使修改的文件生效
source /etc/profile
2.修改/etc/vimrc文件,在末尾加上
syntax on
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set nu
set nocompatible
filetype plugin indent on 75 hi Comment ctermfg =blue ##解决蓝色注释看不清的问题
保存,退出
注:shell script语法高亮和自动缩进的配置 - 竹 影 清 风 - 博客园 (cnblogs.com)
如何学好Shell
(1)掌握Shell脚本基本语法的方法
(2)掌握Shell脚本的各种常见语法
(3)编程变量名字要规范,采用驼峰语法表示
(4)从简单做起,简单判断,简单循环
(5)多模仿,多放下参考资料练习,多思考
(6)学会分析问题,逐渐形成编程思维
(7)形成自己的脚本开发风格
入门小作业
打印 Hello world
vi /tmp/test.sh
#!/usr/bin/bash #添加解释器,可以改为python
echo "Hello world"
运行脚本
chmod 755 /tmp/test #提权
bash /tmp/test.sh #运行
shell特性
-
1.命令补全和文件路径补全
table
-
2.命令历史记忆功能
history
-
3.别名功能
增加 alias tt="echo tt"
删除unalias tt
-
4.常见快捷键
ctrl + y(撤销)
ctrl + c (停止前台)...
-
5.前后台作业控制(screen)
screen -S {task_name}(创建screen任务)
ctrl + a + d (放置任务到后台)
screen -ls(查看当前任务)
screen -r {pid}(进入screen任务)
使用 -r进入screen任务之后,输入exit(删除screen任务)
-
输入输出重定向 > < 1> 2>> &> cat <
-
管道 | tee
-
命令排序
; 没有逻辑关系
&& 前面执行成功,才执行后者
|| 前面执行不成功,才执行后者
-
shell通配符
* 匹配任意字符 ? 匹配任意一个字符 [] 匹配括号中任意一个字符 () 在子shell中执行(如cd /boot;ls) {} 集合(如touch file{1..9}) \ 转义符 -
echo输出颜色,printf格式化输出文本
感谢大家,点赞,收藏,关注,评论!
浙公网安备 33010602011771号