Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3230137
  • 博文数量: 346
  • 博客积分: 10189
  • 博客等级: 上将
  • 技术积分: 3125
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-05 19:46
文章分类

全部博文(346)

文章存档

2013年(35)

2011年(35)

2010年(76)

2009年(48)

2008年(152)

分类:

2008-09-04 15:11:10

使用&&:
    格式:      命令1 && 命令2
    说明:      只有命令1执行后返回真(返回0),命令2才会执行
    例子:      cp /apps/bin /apps/dev/bin  &&  rm -r /apps/bin 只有全部复制成功才删除此目录

使用||:
    格式:      命令1 || 命令2
    说明:      只有命令1执行后返回假(返回1),命令2才会执行
    例子:      cp /apps/aaa.txt /tmp/aaa.txt || echo "fail"   复制如果不成功那么echo信息

用()和{}将命令结合在一起:
    格式:    (命令1;命令2;...)          {命令1;命令2;...}
    说明:    用来将多个命令结合在一起,依次执行,其中{}表示相应的命令将在子shell而不是当前shell中作为一个整体被执行,只有在{}中所有命令的输出作为一个整体被重定向时,其中的命令才被放到子shell中执行,否则在当前shell执行
    例子:      mv aaa.txt bbb.txt || ( echo "fail"|mail user; exit )
       如果把aaa.txt改名为bbb.txt失败,那么发送email后再退出,如果没有()的话,那么只执行最后的exit命令
       sort abc.txt > abc_sort.txt && ( cp abc_sort.txt /logs/abc_sort.txt; lp abc_sort.txt )
       把abc.txt排序后定向到abc_sort.txt中,成功后复制/logs/下,并打印出来

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

上一篇:正则表达式

下一篇:shell的输入与输出

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