Shell脚本编程

发布时间 2023-11-14 18:08:03作者: TechNomad

一、Shell脚本执行的几种方式

1.Shell脚本中用#表示注释,相当于C语言中的//注释,但如何#位于第一行开头,并且是#!(称为Shebang)则例外,它表示该脚本使用后面指定的解释器/bin/sh解释执行,如果把这个脚本文件加上可执行权限然后执行:

保存执行后:

上述脚本直接以./test.sh执行,执行后会启动一个子进程,使用解释器解析脚本中的每一句命令,使用哪个解释器就在脚本的第一句指定,如:#!/bin/bash

2.如果要执行的是一个文本文件,并且第一行用Shebang指定了解释器,则用解释器程序的代码段替换当前进程,并且从解释器的_start开始执行,而这个文本文件被当作命令行参数传给解释器,因此,执行上述脚本相当于执行程序:

以这种方式执行不需要test.sh文件具有可执行权限,但是需要可读权限。

3.如果将命令行下输入的命令用()括号括起来,那么也会fork出一个子Shell执行小括号中的命令,一行中可以输入由分号;隔开多个命令,比如:

4.source或者.命令是Shell的内建命令,这种方式也不会创建子shell,而是直接在交互式Shell下逐行执行脚本中的命令

或者

二、变量的使用

1.变量的命名

按照惯例,Shell变量同城由字母加下划线开头,由任意长度的字母、数字、下划线组成。

在Shell中定义或赋值一个变量

注意等号两边都不能有空格,否则会被Shell解释成命令和命令行参数,变量的使用,用$符号跟上变量名表示对某个变量取值,变量名可以加上花括号来表示变量名的范围。使用花括号来分离value和_World,不至于把value_World当作变量名。