Shell中的变量
1. 变量
1) 名称:字母、数字、下划线组成,数字不能开头
2) 在Bash中,变量的默认类型都是字符串型,别的类型要指定
2. 变量分类
1) 本地变量(用户变量):局部变量只在创建它们的shell中使用,也可以修改
2) 环境变量:可以在创建它们的shell及其派生出来的任意子程序中使用和修改(有些变量是用户创建,其他则是专用的)
3) 内部变量:由系统提供,用户不能修改
3. 本地变量
1) 变量名=值
2) 注:
a) 等号两边不可以有空格
b) 取值包含空格,必须用双引号括起来
c) Shell变量区分大小写
4. 变量的声明和使用
1) 不用声明类型
2) 格式:变量=值
3) 变量的引用
A)
变
量
名
B
)
变量名 B)
变量名B){变量名} (建议使用这个)
5. 显示变量
1) echo命令可以显示单个变量取值,变量名前加$
6. echo显示输出
1) echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号
2) -n:不要在最后自动换行
-help:显示帮助
-version:显示版本信息
7. 清除变量
1) 格式:unset 变量名
8. 环境变量
1) 可以在命令行中设置,但用户注销时这些值将丢失
2) 环境变量均为大写
3) 必须用export命令导出
4) 设置:
NAME=value
Export NAME
5) 显示:
Env:显示所有的环境变量
Echo $环境变量名(显示一个)
6) 清除:unset 环境变量名
7) 让环境变量的修改在退出shell再次登录时仍有效,需要在相关配置文件中修改
Bash的初始化文件有:/etc/profile、/.bash_profile、/.bash_login、/.profile、/.bashrc、/etc/bashrc
9. 环境变量配置文件
1) /etc/profile:存放一些全局变量(如PATH,USER)
2) ~/.bash_profile:输入专用于自己使用的shell信息;当用户登录时,该文件仅仅执行一次
3) ~/.bashrc:包含专用于自己的bash shell的bash信息;当登录时以及每次打开新的shell时,该文件被读取
4) /etc/bashrc:为每一个运行bash shell的用户执行此文件;当bash shell被打开时,该文件被读取
10. 环境变量配置文件的作用
1) 登录Linux先启动系统配置文件/etc/profile,并从/etc/profile.d目录的配置文件中搜集shell的设置,为系统的每个用户设置环境信息
2) 用户配置文件~/.bash_profile,每个用户专用于自己使用的shell信息,仅用户登录时执行一次!
默认情况下,此文件通过脚本执行同目录下用户的.bashrc文件
3) ~/.bashrc文件包含专用于用户bash shell的bash信息,登录及每次打开新的shell时都会执行。里面又会调用/etc/bashrc
11. 设置用户自己的环境变量
12. 环境变量举例
1) HOME:使用者的家目录
2) SHELL:目前这个环境使用的SHELL是哪个程序
3) PATH:执行文件搜寻的路径
13. 内部变量
1) 部分内部变量:
$#:总共有#个参数
$?:返回值;0没有错误,其他数字有错
$0:shell程序的名称
$@:全部参数
$*:‘参数1’…形式保存的参数
$n:第n个参数
$$:本进程的pid
2) 位置参数及引用