Linux——shell scripts(程序化脚本)

79 篇文章 0 订阅
72 篇文章 1 订阅

1、关于shell scripts

shell scripts是利用 shell的功能写的一个程序program,这个程序是使用纯文本文,将一些shell的语法与指令(含外部指令)写在里面,搭配正则表示法、管线命令与数据流重导向等功能,以达到我们想要的处理目的。其中shell是指文字接口底下可以使我们与系统沟通的一个工具接口;scripts是脚本剧本的意思。

shell scripts 的作用

(1)自动化管理的重要依据

(2)追踪与管理系统的重要工作

(3)简单入侵检测功能

(4)连续指令单一化(将所有指令放入文件中,执行文件即执行所有指令)

(5)简易的数据处理

(6)跨平台支持与学习历程较短

2、scripts 的撰写与执行

shell scripts本质是纯文本文档,通过被编辑文件,来使其一次执行多个指令。

注意事项:(1)指令的执行时自上而下,从左到右进行分析与执行

(2)指令、选项与参数间的多个空白都会被忽略掉

(3)空白行也被忽略。并且有tab键产生的空白也将被忽略

(4)如果读取到一个enter符号(CR),就尝试执行该命令

(5)如果一行的内容太多,则可以使用   \enter   来延伸至下一行

(6)  #   可作为批注,加在#后面的内容被在执行过程中被忽略

执行shell scripts文件的方法:

(1)直接下达指令:shell.sh必须具备可读可执行(rx)权限。

             绝对路径:使用文件路径来下达指令

             相对路径:在相对目录下使用./文件名来进行执行文件

             变量PATH功能:将shell.sh放在PATH指定的目录中,例如:~/bin/

(2)以bash程序来执行:透过bash  shell.sh   或   sh shell.sh(/bin/sh是/bin/bash的连接档)来执行。

<1>第一个scripts

解释:

(1)第一行#!/bin/bash用来说明该scripts使用的shell名称,因为我们使用的是bash,所以必须要以#!/bin/bash来宣告该文件内使用的是bash语法,由此在程序被执行时,才可以加载bash的相关环境配置文件(一般来说是non-login shell的~./bashrc)并且执行bash来使我们底下的指令能够执行(很多情况下,如果没有设定好该行,程序可能无法执行,因为系统无法判断用什么shell来执行)

(2)除第一行的宣告shell之外,其余带#号的语句都是用作批注用途。

         建议养成说明scripts:其中说明内容包含:内容与功能、版本信息、作者信息、建档日期、历史记录等。有助于未来程序该写的debug。

(3)主要环境变量的宣告

建议务必将必要的环境变量 设好,其中PATH与LANG是最重要的。

(4)主要程序部分

上例中的echo部分

(5)执行结果告知

在前面的学习中,我们知道可以使用$?来进行指令是否成功执行,同样我们也可以使用exit来使程序中断,并且回传一个数值给系统,本例中使用exit 0,代表离开scripts并且回传一个0给系统,当执行完scripts时,下达指令echo  $? 就可以得到0值。同样我们可以自定义错误信息,利用回传值来进行判断错误。

编写好scripts后通过命令:$  sh  hello.sh来进行执行。另外还可以利用$  chmod  a+x  hello.sh;./hello.sh

3、编写scripts 的规范

(1)在文件开头记录好scripts的功能、版本信息、作者与联系方式、版权宣告方式、历史记录、较为特殊的指令使用绝对路径的方式进行下达、运作时需要的环境 变量预先宣告与设定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值