linux中的shell变量

一、变量的简介

1.变量的定义
变量即在程序运行过程中它的值是允许被改变的量
变量是一串固定的字符来标示不固定的值的一种方法
变量是一种使用方便的占位符,用于引用计算机内存地址,该地址存储Script运行时可更改的程序信息
在shell中变量是不能永久保存在系统中,必须在文件中声明
2.在shell 脚本中变量的种类
1)环境级变量 只在当前shell中生效,当前shell关闭变量丢失
2)用户级变量 写在用户的骨文件中,只针对当前用户生效
3)系统级变量 被写在系统的配置文件/etc/profile或者/etc/profile.d 中,对于所有用户生效
3.shell 脚本中变量定义的方法
1)环境级
 export A=1

linux中的shell变量
2)用户级
vim ~/bash_profile
export A=1

linux中的shell变量

linux中的shell变量
3)系统级
vim /etc/profile
export A=1

linux中的shell变量

linux中的shell变量

4.变量名称的规范

变量名称中通常包含大小写字母,数字,下划线(不是必须的)

变量名称的格式

WESTOS_LINUX

Westos_Linux

westoS_Linux

5.字符的转移及变量的声明
\ 转译单个字符
""为弱引用,批量转译""中出现的字符
''为强引用,批量转译''中出现的字符
""与 ''区别 : "" 不能转译"\" "`" "!" "$"
${}声明变量
$()声明执行的命令
$[] 声明运算

linux中的shell变量

linux中的shell变量

linux中的shell变量

二、变量的应用

1.变量值传递
$1  脚本后的第一串字符串
$2  脚本后的第二串字符串
$3   脚本后的第三串字符串
$# 脚本后所跟字符串的个数
$* 脚本后跟的所有字符串,模式为 “1 2 3”  一串字符
[email protected]    脚本后跟的所有字符串,模式为 “1” “2” “3”  三串字符

vim test.sh  编写测试脚本

linux中的shell变量

linux中的shell变量

linux中的shell变量

检测$*与[email protected]的区别

vim test1.sh

linux中的shell变量

调用

linux中的shell变量

vim test1.sh

linux中的shell变量

调用

linux中的shell变量

2.用read 实现变量传递
read            westos
read -s         westos
read -p "input" westos

linux中的shell变量

linux中的shell变量

3.命令别名的设定

1)环境级别

linux中的shell变量

2)用户级别

linux中的shell变量

linux中的shell变量

3)系统级别

linux中的shell变量

linux中的shell变量

查看系统中的别名

linux中的shell变量

4.利用命令执行结果设定变量

Hostname = $(hostname)
Hostname = `hostname`
$?  是命令在执行完成之后产生的退出值范围是【0-255】
当$?=0是标示命令执行没有错误输出
     $?=1 连接失败
     $?=2 没有找到对象
这个值可以用exit 命令执行
例如:exit 66

linux中的shell变量

linux中的shell变量

linux中的shell变量

linux中的shell变量

三、脚本中的函数

   脚本中的函数是把一个复杂的语句块定义成一个字符串的方法

linux中的shell变量

linux中的shell变量

只有输入exit时才会退出,其他输入都不会退出