有关shell脚本

SHELL脚本

Linux运维工作中有着大量的重复性质的工作,比如同时给很多台的服务器备份,查看多台的内存情况,等等。这样的情况下总不能一个一个服务器自己去看,那样耗时,费力,还容易出错。所以编写程序来做这些事情就成了必要的工作。而SHELL就是完成这项工作的。

 

脚本第一行的开头写上#!/bin/bash

这是属于格式性质的,作用在于加上执行权限后,当你执行该文件时,系统会检查你的开头第一行,然后会执行第一行,发起一个子进程bash然后用这个子进程bash来执行该文件,这个就是脚本的运作模式。

 

在这段中提到的bashSHELL的一种,SHELL就是操作系统与外界对接的外壳,也就是接口。

同时bash也是一个解释器,就是用来解释以#!/bin/bash开头的文件。Bashc语言类似的地方时,他们都是面向过程的语言。面向过程的意义就是不用管其他,你只要是把你将要做的事情的过程想清楚,并用bash语言说清楚,那么这个脚本你就编写好了。

 

过程理清楚,剩下的就是实现方式的问题了,其中基础的三种结构

顺序执行

有关shell脚本 

这就是顺序执行

选择执行

有关shell脚本 

第三种是循环执行图

分为两种,一种符合条件进入循环体,另一种符合条件出循环体。

有关shell脚本 

然而更多的情况下是综合用的。

如:

从一开始输入变量,然后直接就是判断,整体是一个顺序结构,只不过时不时的选择来个分支。

该图就是一个实现用户添加密码功能的脚本。

有关shell脚本 

 

原创文章,作者:何必呢,如若转载,请注明出处:http://www.178linux.com/84496

(0)
何必呢何必呢
上一篇 2017-08-12 15:14
下一篇 2017-08-12 16:05

相关推荐

  • FTP基于PAM和MySQL/MariaDB实现虚拟用户访问控制

    前言 vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,特点是小巧轻快,安全易用,目前在开源操作系统中常用的FTP套件主要有proftpd、pureftp、ServU和wu-ftpd等。本文将讲解vsftpd的基本功能和如何基于PAM和MySQL/MariaDB实现虚拟用户访问控制。 基础配置介绍 工作原理 状态响应码 1xx:信息码 2xx…

    2015-04-20
  • 正则表达式

    什么是正则表达式? 正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为”元字符”)。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,许多程序设计语言都支持利用正则表达式进行字符串操作。正则表达式是烦琐的,但它是强大的,学会之后的应用会让你除…

    Linux干货 2017-06-01
  • 马哥教育21期网络班—第四周课程+练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]#cp -rf /etc/skel /home/tuser1[root@localhost ~]#chmod -R g…

    Linux干货 2016-07-16
  • 磁盘配额

        磁盘配额可以限制指定账户能够使用的磁盘空间,这样可以避免因某个用户的过度使用磁盘空间造成其他用户无法正常工作甚至影响系统运行。在服务器管理中此功能非常重要,但对单机用户来说意义不大。 配置配额系统:     综述:     &nbs…

    Linux干货 2016-09-06
  • gitlab-ce白名单设置杜绝并发数过大引起的封ip故障

    gitlab-ce 7.9安装手札以及上篇文章的问题解决 鸣谢 感谢ruby大神===》章鱼的一路指点,才能拨开迷雾见云天! 章鱼大人:     国内Ansible部落原创翻译之一!     资深运维!     ROR大神!  &…

    Linux干货 2015-09-06
  • linux基础知识之nmcli

           CentOS7才有的功能网络组:将多块网卡聚合在一起的方法,从而实现冗错和提高吞吐量        网络组不同于旧版中的bonding技术,提供了更好的性能和扩展性        网路组由内核驱动和teamd守护进程实现 &n…

    Linux干货 2016-09-07