Chinaunix首页 | 论坛 | 博客
  • 博客访问: 191006
  • 博文数量: 49
  • 博客积分: 1959
  • 博客等级: 上尉
  • 技术积分: 492
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-08 16:23
文章分类

全部博文(49)

文章存档

2012年(8)

2011年(34)

2008年(7)

分类:

2011-05-16 00:08:42

条件结构和流控制
if命令是最简单的决策形式。if/else命令提供双路决策,而if/elif/else命令则提供多路决策。
if后面必须跟一条命令,可以是系统命令也可以是内置命令。命令的退出状态被用于条件的求值。表达式的等号两侧必须有空格。
计算表达式时要用到内置命令test,这个命令也已链接到方括号这个符号上。test命令不会展开shell的元字符(通配符),test测试命令的结果后,返回状态0表示成功代表真,返回状态非0状态表示失败代表假。

[root@centos fuhao]# if ypmatch "$name" passwd > /dev/null 2>&1
> then
> echo Found $name !
> fi
ypmatch命令是一条NIS命令(NIS是Sun公司的网络信息服务,Network Information Services),该命令在位于服务器上的NIS口令数据库中查找命令的参数name。标准输出和标准错误输出都被重定向到UNIX的位桶/dev/null中。

exit命令用于终止脚本并返回命令行;传给exit命令的参数是一个从0 - 255之间的整数。如果程序以0为参数退出,则表明程序执行成功,参数非0则表示程序执行失败。传给exit命令的参数被保存在shell的变量?中。用在希望脚本在某些情况发生时退出的情况。

[root@centos fuhao]# find / -xdev -mtime $1 -size +$2 -print
find命令从根目录开始搜索。选项-xdev阻止find搜索其它分区;选项-mtime带一个数字参数,这个参数代表自文件最后一次被修改以来的天数;选项-size也带一个数字参数,它表示以512字节的块为单位计算而得的文件大小。

sed和awk程序也查找模式,但是不论是否找到模式,它们都报告一个成功的返回状态。sed和awk判断成功的标准是语法是否正确而不是功能。
/usr/sbin/showmount命令列出远程装载到指定主机上的所有客户;
/usr/sbin/wall命令向远程主机上的所有用户发送消息;

检查变量的值是否为空时,必须用双引号把空值括起来,否则test命令会失败。

id命令
功能说明:显示用户的ID,以及所属群组的ID。
  语  法:id [option][username]
  补充说明:id会显示用户以及所属群组的实际与有效ID。若两个ID相同,则仅显示实际ID。若仅指定用户名称,则显示目前用户的ID。
  option如下:
             -a            忽略其他版本的兼容性
             -Z            只显示用户的安全信息
             -g或--group  显示用户所属群组的ID
             -G或--groups  显示用户所属附加群组的ID
             -r或--real  显示实际ID
             -u或--user  显示用户ID
             -n或--name  显示用户,所属群组或附加群组的名称
             --help  显示帮助
             --vertion显示版本信息

阅读(1209) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~