#Linux# #shell编程#

Shell脚本作为Linux系统的独特产物,编程界的特殊语言,它是每一个需要用到Linux的人都应该学习的,因为Shell不仅仅是一个编程语言,它也是一个作为学习Linux的非常有效的学习工具。

学习Shell的好处

学习Shell有以下好处:

  • 可以当成笔记
  • 可以了解步骤的作用

那么如何去理解呢?下面通过简单的案例进行演示

笔记

知根知底的意思就是了解部署一个服务需要进行的所有步骤,例如我安装一个Docker服务(假设源配置已经弄好),然后修改Docker镜像加速地址,再启动服务,而完成这些操作所需的步骤如下:

在debian完成

apt install -y docker.io #安装dockermkdir -p  /etc/docker/ #创建文件夹存放配置文件echo -e "{"registry-mirrors":["https://ung2thfc.mirror.aliyuncs.com"]}" > /etc/docker/daemon.json #写入镜像加速配置systemctl daemon-reload #重新加载配置systemctl restart docker #重启Docker服务

在centos上完成:

yum install -y docker-ce #安装dockermkdir -p  /etc/docker/ #创建文件夹存放配置文件echo -e "{"registry-mirrors":["https://ung2thfc.mirror.aliyuncs.com"]}" > /etc/docker/daemon.json #写入镜像加速配置systemctl daemon-reload #重新加载配置systemctl restart docker #重启Docker服务

下面直接通过终端执行:




怎么将执行shell脚本echo全部输出 shell echo -n_cmd echo写入shell

直接执行




怎么将执行shell脚本echo全部输出 shell echo -n_docker_02


怎么将执行shell脚本echo全部输出 shell echo -n_cmd echo写入shell_03


然后执行完成了,服务也配置好了,然后我们把这些步骤写进一个文件,当作脚本来执行:


怎么将执行shell脚本echo全部输出 shell echo -n_cmd echo写入shell_04


怎么将执行shell脚本echo全部输出 shell echo -n_Shell_05


然后是不是发现,安装Docker并配置镜像加速其实也就几条命令就搞定了,根本不需要再去看网上的乱七八糟的教程了(只是为了安装)。

毕竟很多人写的教程都是随随便便写的,都没经过大脑就发出来,照着做下去发现一大堆坑,浪费时间精力最后还搞不定,按鲁迅的说法:这就是谋杀。

而且笔记做好了,还能当脚本去用,一箭双雕!


怎么将执行shell脚本echo全部输出 shell echo -n_Shell_06

如何安装Docker并配置Docker镜像加速教程/笔记


  • 可以了解步骤的作用

脚本的特性在于不能出现重大错误,因为即使是很小的错误也很有可能导致服务安装部署失败,所以一个好的脚本就是最好的部署教程(前提是你能看懂脚本),而且脚本在编写的过程中还需要判断某些状态应该做什么,应该如何去做才能实现目标,也就是说即使遇到错误了也能判断错误的原因去解决这个错误带来的影响!例如:


怎么将执行shell脚本echo全部输出 shell echo -n_cmd echo写入shell_07

增加判断


怎么将执行shell脚本echo全部输出 shell echo -n_Shell_08

执行