Cat-God-007

导航

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格式化输出文本

35.jpg 感谢大家,点赞,收藏,关注,评论!

posted on 2022-05-29 08:42  CatGod007  阅读(0)  评论(0)    收藏  举报  来源