容易让迷惑的shell变量

分类:Shell | 作者:凹凸曼 | 发表于2011/08/02 容易让迷惑的shell变量已关闭评论

脑袋有时候不好使!  老了!看 shell语法概要,还挺多的, 精简一下 ,方便迷惑了,查找!

容易迷惑的(摘录shell 语法)

$1-9    1-9个参数
$#    参数的数量
$@    所有参数,但是所有参数都是一个字符串
$*    所有参数,但每个参数都是一个单独元素

$$       进程ID变量. 这个$$变量保存了它所在脚本的进程ID

$!        后台进程ID值

需要注意的

;;        终止case选项.
“       命令替换. 已逐渐被$()替代,后者更灵活,如可以嵌套等
()       命令组.
{}       代码块,又被称为内部组, 这个结构事实上创建了一个匿名函数(一个没有名字的函数).
[]       条件测试.数组元素.用作正则表达式的一部分, 方括号描述一个匹配的字符范围.

-e       文件存在.
-f       表示这个文件是一个一般文件.
-d       表示这是一个目录.
-b       表示这是一个块设备.
-c       表示这是一个字符设备.
-p       这个文件是一个管道
-s       文件大小不为零.
-L       这是一个符号链接
-S       表示这是一个socket
-t       文件(描述符)被关联到一个终端设备上.
         这个测试选项一般被用来检测脚本中的stdin([ -t 0 ]) 或者stdout([ -t 1 ])是否来自于一个终端.
-r       文件是否具有可读权限(指的是正在运行这个测试命令的用户是否具有读权限)
-w       文件是否具有可写权限(指的是正在运行这个测试命令的用户是否具有写权限)
-x       文件是否具有可执行权限(指的是正在运行这个测试命令的用户是否具有可执行权限)
-g       set-group-id(sgid)标记被设置到文件或目录上
-u       set-user-id (suid)标记被设置到文件上
-k       设置粘贴位
-O       判断你是否是文件的拥有者
-G       文件的group-id是否与你的相同
-N       从文件上一次被读取到现在为止, 文件是否被修改过
!        “非” — 反转上边所有测试的结果(如果没给出条件, 那么返回真).

[[]]     测试.
(())     整数扩展.
—-运算命令—-
loop=$(((31-16)/8))
echo $loop
用$(())命令可以进行数学计算

本文出自 “凹凸曼” 博客,请务必保留此出处 http://www.apoyl.com/?p=1109

Tag:

日志信息 »

该日志于2011-08-02 12:01由 凹凸曼 发表在Shell分类下, 评论已关闭。

目前盖楼

抱歉,评论被关闭

« »