Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19733542
  • 博文数量: 679
  • 博客积分: 10495
  • 博客等级: 上将
  • 技术积分: 9308
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-18 10:51
文章分类

全部博文(679)

文章存档

2012年(5)

2011年(38)

2010年(86)

2009年(145)

2008年(170)

2007年(165)

2006年(89)

分类:

2007-10-31 14:39:15

shell 命令集成

参考资料:

》第6章命令执行顺序

Linux 基础教程(1) 操作系统基础》第9.4

 

要点:

       第一个命令成功之后才执行,使用&&

       第一个命令失败之后才执行,使用|| 可代替简单的if语句,多用于输出提示信息。

       (命令表)是在新shell中执行

 

 

Linux 基础教程(1) 操作系统基础》中的摘要如下

 

Shell 命令的集成

       元字符和文件名的生成(略)

       两种结构类型:管道和命令表。命令表是一串管道线有 && || &

       命令组合 {命令表}(命令表),前者是在本shell中执行,比如下面例子,一个是是改变了路径的,第2个就没有。注意{ }等旁边要有空格,里面要有分号

 [root@Meil_88 root]# { cd /usr/local ;}

[root@Meil_88 local]#

[root@Meil_88 root]# ( cd /usr/local/ ;)

[root@Meil_88 root]#

       命令替换: 使用``

       输入输出重定向:  文件描述字0为进程的标准输入,1为标准输出,2为标准错误。

$myprog > out 2 >>out

$myprog>out 2 >> &1

 

 

》第6章命令执行顺序中的原文如下:

 

6章命令执行顺序
在本章中,我们将讨论:
命令执行控制。
命令组合。
如果希望在成功地执行一个命令之后再执行另一个命令,或者在一个命令失败后再执行
另一个命令,&&||可以完成这样的功能。相应的命令可以是系统命令或shell脚本。
shell
还提供了在当前shell或子shell中执行一组命令的方法,即使用(){}

6.1
使用&&
6.2
使用||
6.3
(){}将命令结合在一起
如果希望把几个命令合在一起执行, shell提供了两种方法。既可以在当前shell也可以在子shell中执行一组命令。
为了在当前shell中执行一组命令,可以用命令分隔符隔开每一个命令,并把所有的命令用圆括号()括起来。
它的一般形式为:
(命令1;命令2;. . .
如果使用{ }来代替(),那么相应的命令将在子shell而不是当前shell中作为一个整体被执行,只有在{ }中所有命令的输出作为一个整体被重定向时,其中的命令才被放到子shell中执行,否则在当前shell执行。它的一般形式为:
{
命令1;命令2;. . . }

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