Chinaunix首页 | 论坛 | 博客
  • 博客访问: 100723
  • 博文数量: 13
  • 博客积分: 1415
  • 博客等级: 上尉
  • 技术积分: 330
  • 用 户 组: 普通用户
  • 注册时间: 2005-11-01 15:32
文章分类

全部博文(13)

文章存档

2009年(2)

2008年(11)

我的朋友
最近访客

分类:

2008-07-24 11:14:51

################################################
########         SHELL系统变量          ########
################################################
"$#"               传递到脚本的参数个数
"$*"               以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此选项参数可超过9个
"$$"               脚本运行的当前进程ID号
"$!"               后台运行的最后一个进程的进程ID号
"$@"               与$#相同,但是使用时加引号,并在引号中返回每个参数
"$-"               显示shell使用的当前选项,与set命令功能相同
"$?"               显示最后命令的退出状态。0表示没有错误,其他任何值都表明有错误
"$0"               将扩展成从命令行调用的脚本名称,


################################################
######           Shell的数组变量         ######
################################################
Bash中可以使用数组变量,其赋值有两种:
(1) name = (value1 ... valuen) 此时下标从0开始
(2) name[index] = value
数组下标的范围没有任何限制,同时也不必使用连续的分量.
A=(a b c def)

#取全部元素
echo ${A[@]}
a b c def

#取第一个元素
echo ${A[0]}
a

#取得数组元素的个数
echo ${#A[@]}
4
echo ${#A}
4

#取得元素3的长度
echo ${#A[3]}

#将第三个元素重新赋值
A[3]=test
echo ${A[@]}
a b c test

#清除变量
unset A
echo ${A[@]}


#清空变量,即将值变为空
A=
echo ${A[@]}

A=B
B=C
unset $A 事实上所取消的变量是 B 而不是 A


################################################
######           bash中的环境变量         ######
################################################
shell              环境变量是所有shell 程序都会接受的参数。shell程序运行时,都会接收一组变量,这组变量就是环境变量。常用的环境变量: 名称  描述 
PATH               命令搜索路径,以冒号为分隔符.注意与DOS下不同的是, 当前目录不在系统路径里 
HOME               用户home目录的路径名,是cd命令的默认参数 
COLUMNS            定义了命令编辑模式下可使用命令行的长度 
EDITOR             默认的行编辑器 
VISUAL             默认的可视编辑器 
FCEDIT             命令fc使用的编辑器 
HISTFILE           命令历史文件 
HISTSIZE           命令历史文件中最多可包含的命令条数 
HISTFILESIZE       命令历史文件中包含的最大行数 
IFS                定义SHELL使用的分隔符 
LOGNAME            用户登录名 
MAIL               指向一个需要SHELL监视其修改时间的文件.当该文件修改后, SHELL将发消息You hava mail给用户 
MAILCHECK          SHELL检查MAIL文件的周期,单位是秒 
MAILPATH           功能与MAIL类似.但可以用一组文件,以冒号分隔,每个文件后可跟一个问号和一条发向用户的消息 
SHELL              SHELL的路径名 
TERM               终端类型 
TMOUT              SHELL自动退出的时间,单位为秒,若设为0则禁止SHELL自动退出 
PROMPT_COMMAND     指定在主命令提示符前应执行的命令 
PS1                主命令提示符 
PS2                二级命令提示符,命令执行过程中要求输入数据时用 
PS3                select的命令提示符 
PS4                调试命令提示符 
MANPATH            寻找手册页的路径,以冒号分隔 
LD_LIBRARY_PATH    寻找库的路径,以冒号分隔 

################################################
######         bash中的变量调用处理       ######
################################################
${var#pattern}     是要将变量值左边的最短pattern去掉
${var##pattern}    是要将变量值左边的最长pattern去掉
因此,${var##*/}      是将最后一個 / 及其左边的內容去掉。

${var%pattern}     是要将变量值右边的最短 pattern 去掉。
${var%%pattern}    是要将变量值右边的最长 pattern 去掉。
因此,${var%/*}       是将最后一个 / 及其右边的內容去掉。

阅读(819) | 评论(0) | 转发(0) |
0

上一篇:解析Apache配置文件

下一篇:管理LVM逻辑卷

给主人留下些什么吧!~~