北海亭-最简单实用的电脑知识、IT信息技术网站

北海亭-最简单实用的电脑知识、IT技术学习个人站

当前位置: 北海亭 > 软件教程 > 网络编程 >

批处理入门教程:批处理常用的管道命令

时间:2013-01-25 22:31来源:未知 作者:草房子 点击:
批处理入门教程:批处理常用的管道命令 管道命令和组合命令是批处理的调味剂,几乎是少不了的。 管道命令有以下这些:|、、 管道命令1、| 这个命令恐怕大家不是很陌生,经常好啊作DOS的朋友都应该知道,当我们查看一个命令的帮助时,如果帮助信息比较长,一屏

  批处理入门教程:批处理常用的管道命令 管道命令和组合命令是批处理的调味剂,几乎是少不了的。 管道命令有以下这些:|、>、>>

  管道命令1、|

  这个命令恐怕大家不是很陌生,经常好啊作DOS的朋友都应该知道,当我们查看一个命令的帮助时,如果帮助信息比较长,一屏幕显示不完时DOS并不给我们时间让我们看完一屏幕再翻到另一屏幕,而是直接显示到帮助信息的最后。如在提示符下输入help回车时,就会看到当前DOS版本所支持的所有非隐含命令,但你只能看到最后的那些命令,前面的早就一闪而过了,如何解决这个问题?实例十三:

  help | more

  回车后会发现显示满一屏幕后就自动暂停,等候继续显示其他信息。当按写回车时,变成一个一个的出现;按下空格键时一屏幕一屏幕显示,直到全部显示完为止;按其他键自动停止返回DOS。

  为什么会出现上述现象?答案很简单,这里结合了管道命令|和DOS命令more来共同达到目的的。这里先简单介绍一下help命令和more命令,对理解|命令的用法有很大帮助。

  1-1、help命令。其实这个命令是不需要多说的,但在上述例子中help命令的用法比较特殊,直接在DOS提示符下输入help命令,结果是让DOS显示其所支持的所有非隐含命令,而在其他地方用help命令,如输入net help回车,则是显示net命令的帮助信息。

  1-2、more命令。可能很多朋友以前就没有接触过这个命令,这个命令在Linux下的用处非常广泛,也是管道命令之一。大家可以找一篇比较长的文章(a.txt)在DOS提示符下输入如下两个命令去比较一下差别:more a.txt和type a.txt。利用more命令,可以达到逐屏或逐行显示输出的效果,而type命令只能一次把输出显示完,最后的结果就是只能看到末尾的部分。在例十三里,more命令的作用就是让输出的信息逐屏或逐行显示。

  看到这里,你是否已经能隐约感受到了|命令的作用了?没错,它的作用,就是把前一命令的输出当后一命令的输入来用的。在例十三里,前一命令的输出,就是help命令执行后显示的DOS所支持的所有非隐含命令,而这个结果刚好做了后一命令more的输入。所以实例十三和下面的实例十四是等效的:

  help > a.txt

  more a.txt

  del a.txt

  这里利用另一管道命令>生成了一个a.txt文件作为中间环节,在用more命令查看a.txt文件后再删除a.txt文件(例十三的所有好啊作是在内存中进行的,不生成文件)。可以看出,正确使用管道命令|可以带来事半功倍的效果。

  结合实例十三和实例十四,以及前面的实例九再体会一遍:|命令的作用,就是让前一命令的输出当做后一命令的输入。

  管道命令2、>、>>

  这两个命令的效果从本质上来说都是一样的,他们都是输出重定向命令,说的通俗一点,就是把前面命令的输出写入到一个文件中。这两个命令的唯一区别是,>会清除掉原有文件中的内容后把新的内容写入原文件,而>>只会另起一行追加新的内容到原文件中,而不会改动其中的原有内容。实例十五:

代码

  ping sz.tencent.com > a.txt

  ping sz1.tencent.com >> a.txt

  ping sz2.tencent.com >> a.txt

  ping sz3.tencent.com >> a.txt

  ping sz4.tencent.com >> a.txt

  ping sz5.tencent.com >> a.txt

  ping sz6.tencent.com >> a.txt

  ping sz7.tencent.com >> a.txt

  exit

  依次在DOS提示符下输入以上各行命令,一行一个回车,将在当前目录下生成一个a.bat文件,里面的内容如下:

代码

  @echo off

  netstat -a -n > a.txt

  type a.txt | find "7626" && echo "Congratulations! You have infected GLACIER!"

  del a.txt

  pause & exit

  看到这里,你得到了多少信息?1、可以直接在DOS提示符下利用echo命令的写入功能编辑一个文本,而不需要专门的文本编辑工具;2、管道命令>和>>的区别如上所述。如果这里只用>命令来完成上面好啊作,最后也会生成一个a.bat,但里面的内容就只剩下最后一行exit了。所以>和>>一般都联合起来用,除非你重定向的输出只有一行,那么就可以只用>了。结合例一再仔细体会输出重定向管道命令>和>>的用法。

  管道命令3、<、>&、<&

  这三个命令也是管道命令,但它们一般不常用,你只需要知道一下就ok了,当然如果想仔细研究的话,可以自己查一下资料。

  1、<,输入重定向命令,从文件中读入命令输入,而不是从键盘中读入。

  2、>&,将一个句柄的输出写入到另一个句柄的输入中。

  3、<&,刚好和>&相反,从一个句柄读取输入并将其写入到另一个句柄输出中。

  扩展阅读:批处理入门教程:批处理常见符号含义

(责任编辑:IT信息技术民工)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容