shell变量的使用
转载请标明http://www.cnblogs.com/winifred-tang94/
shell环境中变量有三种类型:
a、 环境变量;可以在shell脚本中直接利用“$环境变量名称”的形式引用。
b、 用户自定义变量;不需要事先定义,通常情况下,使用变量的时候直接对变量赋初值。变量名称=变量初始值(注意:变量名称的要求——首字符必须是字母,可以用下划线,但是不能有标点符号和空格,不能使用shell里的关键字)
c、 系统全局变量;代表了特定含义,不能被用户修改。一般来说,主要的全局变量包括以下几个:
$#:执行shell脚本时,命令行参数个数,不包括脚本本身。
$?:执行上一条shell命令的返回值(退出状态,大部分命令执行成功返回0,失败返回1,不过也有一些其他命令返回其他值标识其他错误)。
$0:shell脚本程序自身的名称。同时,$1代表shell命令行中第一个参数,$2代表第二个参数,$3代表第三个参数,以此类推。
$*:传递给脚本或函数的所有参数。
$$:当前shell进程ID,就是当前脚本所在的进程ID。
要在脚本中使用变量则是利用“$变量名称”的方法。
Eg.创建一个脚本计算两数之和
值得注意的一点:在使用expr进行运算时,运算符两边要记得加空格。
结果是:
一开始出错如下:
原因:这个脚本文件需要除了脚本本身以外的参数,运行脚本的时候没有输入参数。
$* 和 $@的区别:
$* 和 $@ 都表示传递给函数或脚本的所有参数,不被双引号(" ")包含时,都以"$1" "$2" … "$n" 的形式输出所有参数。 但是当它们被双引号(" ")包含时,"$*" 会将所有的参数作为一个整体,以"$1 $2 … $n"的形式输出所有参数;"$@" 会将各个参数分开,以"$1" "$2" … "$n" 的形式输出所有参数。
Eg.
转载于:https://www.cnblogs.com/winifred-tang94/p/5823988.html
shell变量的使用相关推荐
- linux特殊系统变量,linux环境几个特殊的shell变量
特殊的shell变量: $0 获取当前执行的shell脚本的文件名 $n 获取当前执行的shell脚本的第n个参数值,n=1..9 $* 获取当前shell的所有参数 "$1 $2 $ ...
- linux脚本查看变量类型,Shell变量:Shell变量的定义、删除变量、只读变量、变量类型...
变量是任何一种编程语言都必不可少的组成部分,变量用来存放各种数据.脚本语言在定义变量时通常不需要指明类型,直接赋值就可以,Shell 变量也遵循这个规则. 在 Bash shell 中,每一个变量的值 ...
- linux超级基础系列——shell变量(本地变量和环境变量)
linux超级基础系列--shell变量(本地变量和环境变量) 2006-12-04 00:39 为使shell编程更有效,系统提供了一些shell变量.shell变量可以保存诸如路径名.文件名或者一 ...
- linux中shell变量$#,$@,$0,$1,$2的含义解释
linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $ ...
- 《Linux shell变量总结回顾》RHEL6
在实际的生产中,运维一般使用的shell语法还是比较多的,时不时的就要写一个简短shell脚本,大型的shell脚本用到的function 比较多,便于下一个脚本的引入,下面主要总结一些简单的shel ...
- sed和awk中使用shell变量
最近做预料处理,使用bash脚本,需要在脚本的sed和awk使用shell变量以控制循环,出现一些问题后找到解决办法如下: 1.sed使用shell变量 这个比较好办,sed命令中可以用单引号和双引 ...
- shell变量加单引号sql_关于shell:在Bash中的命令中扩展变量的单引号
我想从bash shell脚本中运行一个命令,该脚本在单引号和变量中包含单引号和一些其他命令. 如repo forall -c '....$variable'. 在这种格式中,对$进行转义,不展开变量 ...
- 马哥学习笔记——shell变量类型
shell变量基础 shell 变量是一种很"弱"的变量,默认情况下,一个变量保存一个串,shell不关心这个串是什么含义.所以若要进行数学运算,必须使用一些命令例如let. de ...
- Shell变量命名规则
Shell变量命名规则 变量名必须是以字母或下划线字符"_"开头,后面跟字母.数字或下划线字符.不要使用?.*或其他特殊字符命名你的变量. 注意: 变量名和等号之间不能有空格: 首 ...
- Linux shell 变量 数学 运算
出处:http://qujunorz.blog.51cto.com/6378776/1382085 Abstract : 1) Linux shell 中使用 let , [ ] ,(( )) 三种 ...
最新文章
- 目标检测 - YOLO9000 : Better, Faster, Stronger
- SpringBoot 使用(三): 配置文件详解
- 通向高可扩展性之路(谷歌篇)
- 国外流行十大PHP框架
- Python中abs()和fabs()方法之间的区别
- 简单高效地控制高亮度LED
- 江苏高中计算机考试成绩查询系统,江苏2018普通高中信息技术学业水平测试成绩查询系统已开通...
- Timus 1015. Test the Difference!
- @程序员,如何快速配置 Spring?
- Section 1.3 milk
- spring整合cxf,轻松编写webService客户端、服务端
- JDK各个版本的新特性jdk1.5-jdk8
- ApacheBench~网站性能测试工具
- 虚拟机下载-下载windows镜像
- AutoCAD自带CAD Express Tools实现停车位自动编序号
- 机器人学基础(一):空间描述与坐标变换
- t470键盘拆解_thinkpad t470怎么样?thinkpad t470拆机图解全面评测
- MapGuide应用开发系列(三)----MapGuide 数据包管理及Maestro亮点功能介绍
- 洛谷——P1957 口算练习题
- latex 琐粹记录