Linux学习笔记(7) 之Shell变量

来源:互联网 发布:易建联新秀赛季数据 编辑:程序博客网 时间:2024/05/22 10:41

1、用户自定义变量

命名:变量名必须以字符或下划线开始,其余部分可为字母、数字或下划线;

语法:变量名=变量值

变量的引用: $变量名

清除变量的内容: unset  变量名

查看变量的值: set

[root@host ~]# var1="hello linux"#给变量var1赋值
[root@host ~]# read var2 #给变量var2赋值
welcome bash
[root@host ~]# echo $var1 $var2 #显示本地变量的值
hello linux welcome bash

[root@host ~]# unset var1#清除变量var1的值

[root@host ~]# set #显示所有变量的值


2、环境变量

环境变量又称全局变量,通常由系统在启动时设置。环境变量一般用大写字母表示,通过env命令可查看系统中定义的环境变量。用户自定义变量可通过export命令输出为环境变量。环境变量引用与用户自定义变量相同。

[root@host ~]# echo $PATH#显示路径变量

$MYNAME="zhangs"  //定义本地变量MYNAME

$ export MYNAME //将本地变量MYNAME输出为环境变量

$ echo  $var1  $MYNAME  //显示本地变量和环境变量

$ bash //创建子进程bash

$ echo $var1  $MYNAME //显示本地变量和环境变量

$ exit //退出子进程bash

$ echo $var1  $MYNAME

通过修改环境变量PS1可修改提示符

$ PS1=$   //将提示符变为$


$ cd ~  //进入用户的主目录

$ vi .bash_profile//编辑配置文件

在PATH路径中增加当前路径:

PATH=$PATH;$HOME/bin:.

$ exit //退出

用该用户的账号重新登录系统

执行当前目录下的locat.sh脚本无需制定当前路径,例如:

$ locat.sh  myname is zhangs

3、位置变量

$0 脚本程序的名字

$1,$2... 传递给脚本的参数,$1代表第一个参数,依此类推

使用编辑器vi编辑下列shell脚本

#!/bin/bash

echo $0 $1 $2 $3

将上述两行脚本保存为文件locat.sh

$ chmod +xlocat.sh //增加执行权限

$ ./locat.sh  you me he 

显示:locat.sh  you me he 
4、预定义变量

$# 传递到脚本的参数的数量

$* 传递到脚本的所有参数的内容

$? 命令执行后返回的状态,0表示成功执行,其他值则表示执行错误

$$ 当前进程的进程号

$! 后台运行的最后一个进程号

用编辑器vi编辑以下shell脚本

#!/bin/bash

echo  $#

echo  $*

将上述三行保存为文件predef.sh

$chmod +xpredef.sh //增加执行权限

$ ./predef.shLinux Unix Windows

显示:3

   Linux Unix Windows





0 0