shell脚本编程

什么是shell

shell是操做系统的最外层,shell能够合并编程语言以控制进程和文件,以及启动和控制其余程序。shell经过提示您输入,向操做系统解释该输入,而后处理来自操做系统的任何结果输出,简单来讲shell就是一个用户跟操做系统之间的一个命令解释器。shell

shell环境

Linux shell种类有不少,常见的shell以下:编程

bourne shell(/user/bin/sh或/bin/sh);bash

bourne again shell(/bin/bash);编程语言

C shell(/user/bin/csh);函数

K shell(/user/bin/ksh);spa

shell for root(/sbin/sh);操作系统

不一样的shell语言的语法有所不一样,通常不能交换使用,最经常使用的shell是bash,也就是bourne again shell。bash因为易用和免费,在平常生活中被普遍使用,也是大多数Linux操做系统默认的shell环境。code

shell脚本及Hello World

要熟练掌握shell编程语言,须要大量的练习,初学者能够用shell打印“Hello World”字符。blog

shell脚本编程须要注意如下几个事项:进程

一、shell脚本名称命名通常为英文的大写、小写;

二、不能使用特殊符号、空格来命名;

三、shell脚本后缀以.sh 结尾;

四、不建议shell命名为纯数字、通常以脚本功能命名;

五、shell脚本内容首行需以#!/bin/bash开头;

六、shell脚本中的变量名称尽可能使用大写字母,字母间不能使用“-”,能够使用“_”;

七、shell脚本变量名称不能以数字、特殊符号开头。

如下为第一个shell编程脚本,脚本名称为first_shell.sh,代码以下:

#!/bin/bash
echo "Hello World"

first_shell.sh脚本内容详细解释以下:

一、#!/bin/bash:固定格式,定义该脚本所使用的shell类型。

二、echo "Hello World":shell脚本主命令,执行该脚本呈现的内容。

shell脚本编写结束后,若是运行该脚本,运行用户须要有执行权限,能够使用以下命令:

chmod +x ./first_shell.sh //获取可执行权限
./first_shell.sh //执行脚本

或者直接使用以下执行命令直接运行脚本,不须要执行权限:

/bin/sh first_shell.sh

运行结果以下:

shell编程之变量详解

shell属于非类型的解释型语言,在使用变量时不像C++、JAVA语言编程时须要事先声明变量,shell给一个变量赋值,实际上就是定义了该变量,在Liunx支持的全部shell中能够用赋值符号“=”为变量赋值,shell为弱类型语言,定义变量不须要声明类型,若是在使用时须要明确变量的类型,能够使用declare指定类型,declare常见的参数以下:

一、+/-:“-”可用来指定变量的属性,“+”可用来取消变量所设属性;

二、-f:仅显示函数;

三、r:将变量设为只读;

四、x:指定的变量将会成为环境变量,可供shell之外的程序使用;

五、i:指定类型为数值,字符串或运算符。

shell编程中变量分为三种:

一、系统变量:在对参数判断和命令返回值判断时使用;

二、环境变量:主要是在程序运行时须要设置;

三、用户变量:又称为局部变量,多使用在shell脚本内部或者临时局部。

shell变量名在定义时,首个字符必须为字母(a~z,A~Z),不能以数字开头,中间不能有空格,能够使用下划线“_",不能使用”-“,也不能使用标点符号等。