Linux基础入门——shell脚本的数组与变量替换(十一)
一:shell特殊变量
前面已经讲到,变量名只能包含数字,字母和下划线,因为某些包含其它字符的变量有特殊含义,这样的变量被称为特殊变量。
例如,$表示当前shell进程的ID,即pid,看下面的代码:
运行结果
二:命令行参数
运行脚本时传递给脚本的参数称为命令行参数。命令行参数用$n表示,例如,$1表示第一个参数,$2表示第二个参数,以此类推。
请看下面的脚本:
运行结果:
三:退出状态
$?可以获取上一个命令的退出状态。所谓退出状态,就是上一个命令执行后的返回结果。退出状态是一个数字,一般情况下,大部分命令执行成功会返回0,失败返回1,不过也有一些命令返回其它值,表示不同类型的错误。下面例子中,命令成功执行:
$?也可以表示函数的返回值,后续将会讲解。
四:shell数组
在shell中,用括号来表示数组,数组元素用“空格”符号分割开,定义数组的一般形式为:
array_name=(value1 … valueN)
例如:
还可以单独定义各个数组的分量:
可以不使用连续的下标,而且下标的范围没有限制。
五:读取数组
读取数组元素值的一般格式是:
${array_name{index}}
例如:
举个例子:
运行脚本,输出:
使用@或*可以获取数组中的所有元素,例如:
举个例子:
运行脚本,输出:
六:获取数组的长度
获取数组长度的方法与获取字符串长度的方法相同,例如:
六:shell变量替换
如果表达式中包含特殊字符,shell将会进行替换。例如,在双引号中使用变量就是一种替换,举个例子:
运行结果:
七:命令替换
命令替换是指shell可以先执行命令,将输出结果暂时保存,在适当的地方输出,命令替换的语法:
注意:是反引号,不是单引号,这个键位于Esc下方。
下面的例子中,将命令执行结果保存在变量中:
运行结果:
八:变量替换
变量替换可以根据变量的状态(是否为空、是否定义等)来改变它的值
可以使用的变量替换形式:
请看下面的例子:
- linux——Shell 脚本基础篇(变量类型,变量操作,定义,运算与逻辑关系)
- Linux入门第五天——shell脚本入门(下)基础语法之循环
- linux脚本编写基础(环境变量、shell流程控制)
- Linux简单入门(十二)shell脚本之前的基础知识
- Linux入门第五天——shell脚本入门(中)基础语法之判断与条件
- Linux入门之Shell脚本基础
- linux之基础shell脚本编程1 基础变量赋值
- Linux基础-shell脚本知识整理和脚本编写----------变量、运算符、流程控制、函数、计划任务(发送邮件)
- Linux新手生存笔记[8]——shell脚本基础1-变量
- 嵌入式成长轨迹2【嵌入式环境及基础】【嵌入式Linux软件开发入门】【Shell脚本基础】
- linux之基础shell脚本编程4 字符串操作,变量赋值,配置用户环境
- Linux新手生存笔记[8]——shell脚本基础1-变量
- linux之基础shell脚本编程3 函数数组
- Linux入门第五天——shell脚本入门(下)基础语法之调试debug
- Linux基础入门及系统管理01-bash脚本编程之四文件测试及特殊变量19
- Linux基础入门及系统管理01-bash脚本编程之一变量、变量类型等16
- 嵌入式Linux入门基础知识 ---- 链接脚本、汇编语言、混合编程
- linux变量及shell基础知识
- linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法
- linux基础之Shell Script入门介绍