ASP站长网在Linux中,当你想要做什么事情的时候,可以通过输入命令传递给计算机,但也会有很多时候,我们需要计算机/服务器完成相同的任务,如果我们再一次一次输入命令执行的话,就会非常的不方便,要想让所有的事情变得简单并且自动化,我们就可以借助shell脚本来实现,也就是说脚本语言是我们与计算机交流的一种便捷途径。
 
##脚本基础
 
1)内容:包含一些命令或声明,并符合一定格式的文本文件。
 
2)格式要求:首行shebang机制
 
    #!/bin/bash
 
    #!/usr/bin/Python
 
    #!/usr/bin/per1
 
3)脚本的用途:
 
    *自动化常用的命令
 
    *执行系统管理和故障排除
 
    *创建简单的应用程序
 
    *处理文本或文件
 
4)创建脚本过程
 
    *使用文本编辑器来创建文本文件
 
     -可以添加注释,注释以#开头
 
    *运行脚本
 
     -给予执行权限,在命令上指定脚本的绝对或相对路径
 
    -直接运行解释器,将脚本作为解释器程序的参数运行
 
##语句控制 (脚本过程编辑语言有三种过程)
 
1)顺序执行
 
    *不需要特定的控制,只需要按照语句依次执行即可
 
2)选择执行
 
    *需要特定的控制语句(如 if,case等)来判断执行
 
     -选择执行还可以包括单分子、双分支、多分支结构,示例如下
 
1、
 
 
 
2、
 
 
 
脚本自上而下逐条件的判断,第一次判断到“假”条件时,执行分支判断,直至结束。
 
3)循环执行
 
    * 将某代码段重复运行多次,重复循环的次数可以事先已知,也可以事先未知,设定进入和退出循环的条件。(包括for,while,until)
 
     -for 循环    
 
1、格式:
 
for 变量名 in 列表;do
 
    循环体
 
done
 
2、执行机制:
 
依次将列表中的元素赋值给“变量名”,每次赋值后执行一次循环,直到列表中的元素耗尽,循环结束。
 
3、列表生成方式:
 
(1)直接给出列表(2)整数列表(3)返回列表的命令(4)使用glob,如:*.sh(5)变量引用
 
4、特殊格式:
 
for ((控制变量初始化;条件判断表达式;控制变量的修正表达式))
 
do
 
    循环体
 
done
 
5、示例:
 
 
 
特殊格式示例
 
 
 
     -while 循环
 
1、格式
 
while CONDITION;do
 
    循环体
 
done
 
2、CONDITION:循环控制条件;进行循环之前,先做一次判断,每一次循环之后再次做判断,条件为“True”,则执行一次循环,直到条件测试状态为“false”时结束循环。
 
3、示例:
 
 
 
     -until 循环
 
1、格式:
 
until CONDITION;do
 
    循环体
 
done
 
2、CONDITION:循环控制条件;进行循环之前,先做一次判断,每一次循环之后再次做判断,为“false”,则执行一次循环,直到条件测试状态为“true”时结束循环。
 
3、示例:
 
 
 
     -select 循环
 
1、格式
 
select variable in list
 
    do
 
        循环体
 
done
 
2、select 循环主要是用于创建菜单,按数字顺序排列的菜单项将显示标准错误上,并显示PS3提示符,等待用户输入。用户输入菜单列表中的莫个数字,执行相应的命令(用户输入被保存在内置变量REPLY中)
 
3、select 是个无限循环,因此要记住用break 命令退出循环,或者用exit命令结束循环,select 经常与 case 联合使用。
 
4、示例:
 
 
 
    *控制语句:
 
     -continue [N]:提前结束第N层的本轮循环,而直接进入下一轮的判断,最内层为第一层。
 
     -break [N]:提前结束第N层循环,最内层为第一层。
 
     -shift [N]:用于将参数列表list左移指定次数,缺省为左移一次。
 
##函数
 
函数function 是由若干条shell命令组成的语句块,实现代码重用和模块化编辑,它不是一个单独的进程,不能独立运行,而是shell程序的一部分。
 
1)语法 (有两部分组成,函数名和函数体),三种语法
 
    *function f_name {
 
                ...函数体...
 
      }
 
    *function f_name () {
 
                ...函数体...
 
      }
 
    *f_name () {
 
            ...函数体...
 
      }
 
2)函数的执行结果返回值:
 
    *使用echo等命令进行输出
 
    *函数体中调用命令的输出结果
 
3)函数的退出状态码:
 
    *默认取决于函数执行的最后一条命令的退出状态码
 
     *自定义退出状态码,格式为:
 
     -return 从函数中返回,用最后状态命令决定返回值
 
     -return 0 无错误返回。
 
     -returu 1-255 有错误返回
 
 
 
4)使用函数方法:
 
函数在使用前必须定义,因此应将函数定义放在脚本开始部分,直至shell首次发现它后才能使用,调用函数仅使用函数名即可。

dawei

【声明】:九江站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。