码迷,mamicode.com
首页 > 系统相关 > 详细

shell脚本学习总结--变量与环境变量

时间:2016-08-05 06:24:25      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:

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

      $_ 获取之前命令或脚本的最后一个参数

     !$ 执行上一个命令  

shell脚本学习总结--变量与环境变量

标签:

原文地址:http://www.cnblogs.com/zydev/p/5739016.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!