标签:
bash中一切变量都是以字符串的形式存储,env命令可以查看与此终端进程相关的环境变量。
查看一个进程的环境变量
1.获得程序的PID,例如Java
# pgrep java
23492
2.查看对应的环境变量
# cat /proc/23492/environ
3.将输出格式化,这样查看会比上图清晰
# cat /proc/23492/environ |tr ‘\0‘ ‘\n‘
“^@”将变换成换行符
变量赋值
var=varlue,如果value不包含空白字符,则不必加单引号或者双引号
var = value 是相等操作,注意区分,很多人这个地方发生混淆
输出变量
echo $var 或者 echo ${var}
例如:
# var=apple # echo "${var}(s)" apple(s)
获取变量的字符长度
echo ${#var}
特殊变量
$PS1 系统默认:PS1="[\u@\h \W]\$"
$UID 为0时代表root用户
$TMOUT 终端timeout时间
$0,$* ,$@ , $#
[root@Director sbin]# cat /usr/local/sbin/test.sh #!/bin/bash echo ‘$0=‘ $0 #脚本的名称 echo ‘$1=‘ $1 #运行脚本的第n个参数 echo ‘$#=‘ $# #运行脚本参数的个数 echo ‘$*=‘ $* #所有参数变成一个字符 echo ‘$@=‘ $@ #所有参数 basename $0 #获取文件名 dirname $0 #获取文件的目录 [root@Director sbin]# sh /usr/local/sbin/test.sh aa bb $0= /usr/local/sbin/test.sh $1= aa $#= 2 $*= aa bb $@= aa bb test.sh /usr/local/sbin
进程状态变量
$? 获取执行上一个命令的返回值(0为成功,其它为失败)
$$ 获取当前shell的PID
$_ 获取之前命令或脚本的最后一个参数
!$ 执行上一个命令
标签:
原文地址:http://www.cnblogs.com/zydev/p/5739016.html