有关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

相关推荐

  • N21-天天-第九周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash awk -F: '$NF~"/sbin/nologin" {shell++} $NF!~&qu…

    Linux干货 2016-09-01
  • 数据结构应用详解-

    概述 最小生成树——无向连通图的所有生成树中有一棵边的权值总和最小的生成树 拓扑排序 ——由偏序定义得到拓扑有序的操作便是拓扑排序。建立模型是AOV网 关键路径——在AOE-网中有些活动可以并行地进行,所以完成工程的最短时间是从开始点到完成点的最长路径的长度,路径长度最长的路径叫做关键路径(Critical Path)。 最短路径——最短路径问题是…

    Linux干货 2015-04-07
  • 马哥教育网络21期+第九周练习博客

    马哥教育网络21期+第九周练习博客 1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; [root@localhost bin]# cat 1.sh  #!/bin/bash # while&nbsp…

    Linux干货 2016-09-05
  • 马哥教育网络班19期+第三周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。   whoami 只显示已经登录的用户     who | cut -d' ' -f1 | sort&nbs…

    Linux干货 2016-06-19
  • Linux网络管理基础

    Linux网络管理基础 动态路由 Bonding Network Teaming 静态路由实验 Linux的网络管理,了解基本的网络知识是基础,除此,要掌握好ifconig命令、ip命令、nmcli命令(CentOS 7),以及涉及到网络的配置文件。 配置动态路由: 通过守护进程获取动态路由,安装quagga包,支持RIP、OSPF、BGP,通过命令vtys…

    Linux干货 2016-09-09
  • 计划任务&脚本进阶练习

    1、每天的2点和12点整,将/etc备份至/testdir/backup目录中,保存的文件名称格式为“etcbak-yyyy-mm-dd-HH.tar.xz” mkdir /testdir/backup vim /root/bin/etcbak.sh tar cvf /testdir/backup/etcbak-`date “+%F-%H”`.tar.xz …

    Linux干货 2017-03-26