`
hxmilyy
  • 浏览: 16148 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

DOS重定向操作符 ( 管道命令 ):|、>、>> 、<、>&、<&

 
阅读更多
重定向操作符
说明
>
将命令输出写入到文件或设备(例如打印机)中,而不是写在命令提示符窗口中。
<
从文件中而不是从键盘中读入命令输入。
>>
将命令输出添加到文件末尾而不删除文件中的信息。
>&
将一个句柄的输出写入到另一个句柄的输入中。
<&
从一个句柄读取输入并将其写入到另一个句柄输出中。
|
从一个命令中读取输出并将其写入另一个命令的输入中。也称作管道。
1、|
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、>、>>
这两个命令的效果从本质上来说都是一样的,他们都是输出重定向命令,说的通俗一点,就是把前面命令的输出写入到一个文件中。这两个命令的唯一区别是,>会清除掉原有文件中的内容后把新的内容写入原文件,而>>只会另起一行追加新的内容到原文件中,而不会改动其中的原有内容。例十五:
echo @echo off > a.bat
echo echo This is a pipeline command example. >> a.bat
echo echo It is very easy? >> a.bat
echo echo Believe your self! >> a.bat
echo pause >> a.bat
echo exit >> a.bat
依次在DOS提示符下输入以上各行命令,一行一个回车,将在当前目录下生成一个a.bat文件,里面的内容如下:
@echo off
echo This is a pipeline command example.
echo It is very easy?
echo Believe your self!
pause
exit
看到这里,你得到了多少信息?1、可以直接在DOS提示符下利用echo命令的写入功能编辑一个文本,而不需要专门的文本编辑工具;2、管道命令>和>>的区别如上所述。如果这里只用>命令来完成上面好啊作,最后也会生成一个a.bat,但里面的内容就只剩下最后一行exit了。所以>和>>一般都联合起来用,除非你重定向的输出只有一行,那么就可以只用>了。结合例一再仔细体会输出重定向管道命令>和>>的用法。
3、<、>&、<&
这三个命令也是管道命令,但它们一般不常用,你只需要知道一下就ok了,当然如果想仔细研究的话,可以自己查一下资料。
<,输入重定向命令,从文件中读入命令输入,而不是从键盘中读入。
>&,将一个句柄的输出写入到另一个句柄的输入中。
<&,刚好和>&相反,从一个句柄读取输入并将其写入到另一个句柄输出中。
关于这三个管道命令的举例,在后面批处理脚本的精妙应用中还将涉及到。


etc:
cmd > file 把 stdout 重定向到 file 文件中
    cmd >> file 把 stdout 重定向到 file 文件中(追加)
    cmd 1> file 把 stdout 重定向到 file 文件中
    cmd > file 2>&1 把 stdout 和 stderr 一起重定向到 file 文件中
    cmd 2> file 把 stderr 重定向到 file 文件中
    cmd 2>> file 把 stderr 重定向到 file 文件中(追加)
    cmd >> file 2>&1 把 stderr 和 stderr 一起重定向到 file 文件中
    cmd < file >file2 cmd 命令以 file 文件作为 stdin,以 file2 文件作为 stdout
        注:>& n 使用系统复制文件描述符 n 并把结果用作标准输出
            <& n 标准输入复制自文件描述符 n
            <& - 关闭标准输入(键盘)
            >& - 关闭标准输出
            n<& - 表示将 n 号输入关闭
            n>& - 表示将 n 号输出关闭
            &> 同时实现输出重定向和错误重定向
分享到:
评论

相关推荐

    DOS操作大全 详细的word文档

    - `PIPE` (`|`) 和 `REDIRECT` (`&gt;`、`&lt;`、`&gt;&gt;`):管道和重定向,用于连接命令输出或输入。 - `FOR`循环:在批处理文件中执行重复操作。 - `GOTO`和`:label`:批处理中的跳转指令。 - `IF`条件判断:在批处理中...

    DOS命令大全PDF高清.zip

    - **重定向**:`&gt;`将命令输出重定向到文件,`&lt;`将文件内容作为命令的输入。 - **批处理**:`.bat`文件可以包含一系列命令,一次执行,方便重复操作。 四、DOS命令在现代计算机中的应用 尽管现在大多数用户更习惯于...

    Dos命令信息大全 DOS 命令 函数

    2. **重定向(&gt; 和 &lt;)**:将命令的输出重定向到文件(&gt;`file.txt`),或将文件内容输入到命令(`&lt;file.txt cmd`)。 3. **通配符**:`*`代表任意数量的字符,`?`代表单个字符,常用于文件名匹配。 4. **条件与逻辑...

    CMD命令行管道命令使用介绍

    管道符“|”在DOS和CMD环境中扮演着关键角色,它使得一系列命令可以串联起来,形成复杂的任务流程。 一、管道命令的基本概念 管道命令的核心在于传递。它通过“|”符号将一个命令的输出作为下一个命令的输入,这就...

    dos基础命令大全介绍

    "DOS基础命令大全介绍"这份PDF文档全面概述了DOS命令的基本操作,包括内部命令、外部命令、单符号和多符号,以及8种重要的命令操作符。下面将详细解释这些概念和操作符。 1. **内部命令**:内部命令是DOS操作系统...

    DOS批处理高级教程合编(含目录标签,方便查阅)

    - 特殊符号使用:例如@命令行回显屏蔽符、%批处理变量引导符、&gt;和&gt;&gt;重定向符、&lt;、&gt;&、&lt;&重定向符、|命令管道符、^转义字符等。 2. FOR命令详解 - FOR命令是批处理中用于遍历一组文件、字符串或范围的命令,包括...

    获取dos窗口命令输出结果

    如果需要将命令的输出保存到文件,可以使用重定向操作符 `&gt;` 或 `&gt;&gt;`。`&gt;` 用于覆盖已有文件,`&gt;&gt;` 用于追加到文件末尾。例如: ``` dir &gt; files.txt ``` 这条命令会将当前目录的文件列表保存到名为 `files.txt...

    dos 快速入门教程

    - **重定向**:`&gt;`用于将命令输出重定向到文件,`&lt;`用于从文件读取输入。 - **FOR循环**:在批处理中使用`for`进行迭代操作,如`for %i in (*.txt) do echo %i`打印所有.txt文件名。 5. **DOS实用工具** - **...

    Linux服务器技术项目三.ppt

    2. |命令:管道符,用于将一个命令的输出结果作为另一个命令的输入。 四、 包管理 1. rpm命令:用于管理包。 2. yum命令:用于管理包。 3. 图形化模式下管理包:可以在图形化模式下管理包。 五、 系统管理 1. ...

    什么是DOS操作系统_DOS命令教程

    7. **高级特性**:如子shell(`START`命令)、管道(`|`)和重定向(`&lt;`和`&gt;`)功能,允许用户连接命令输出或输入。 通过学习DOS命令,用户不仅可以掌握计算机基础操作,还可以了解操作系统的基本原理,这对于理解...

    经典之dos命令特殊字符含义

    例如,`^&gt;`表示直接显示`&gt;`字符而不是作为重定向操作符。 - **位运算**:在`set /a`命令中,`^`表示按位异或运算。例如: ```bat set /a result=5^3 echo %result% ``` 输出结果为2,即5和3进行按位异或运算...

    DOS命令全集电子书教程

    - **重定向**:使用"&lt;"和"&gt;"将输出重定向到文件,或从文件读取输入。 - **条件和循环**:批处理文件可以包含IF、FOR等结构,实现条件判断和循环操作。 总的来说,DOS命令全集电子书教程对于想要深入了解计算机操作...

    dos.rar_The Dos

    标题 "dos.rar_The Dos" 暗示了我们即将探讨的是有关DOS(磁盘操作系统)的知识,特别是关于在Windows环境下使用DOS命令提示符的一些实用键盘快捷键。DOS,虽然在现代操作系统中已经不再作为主要界面,但在某些特定...

    DOS命令全集(中英文对照)

    - **重定向**:`&gt;`和`&lt;`用于将命令输出重定向到文件或从文件读取数据。 6. **DOS与Windows的关系** - 在Windows操作系统中,DOS命令仍然可用,但被命令提示符(CMD)所取代,功能更为强大。 - PowerShell是微软...

    DOS命令大全.zip

    除了基本命令外,还有一些高级命令,例如批处理文件(.bat)的创建和使用,以及如何通过管道(|)和重定向(&gt;、&lt;)符号来连接命令和管理输出。 批处理文件允许用户将一系列DOS命令写入一个文本文件,然后通过运行该...

    dos批处理脚本命令详解

    接着,通过管道符`|`将`a.txt`的内容传递给`find`命令查找特定的端口号(7626,冰河木马常用端口)。如果找到匹配项,就提示用户可能中了冰河木马;反之,则表示系统安全。 通过以上几个实例,我们可以看到DOS...

    dos命令与linux的命令

    DOS命令与Linux命令虽然在表面上有些相似,但两者之间存在显著的区别,主要体现在操作系统环境、命令语法、功能扩展以及交互方式上。本篇将深入探讨这些命令的对比,帮助初学者更好地理解和使用Linux。 首先,DOS是...

    《DOS命令全集(中英文对照)》CHM版.CHM

    《DOS命令全集(中英文对照)》是一本详细阐述DOS操作系统的命令手册,以CHM(Compiled Help Manual)格式提供,便于用户查阅和学习。DOS,即Disk Operating System,是早期个人计算机上广泛使用的命令行操作系统,...

    Windows下DOS命令实用技术详解

    6. **管道与重定向**:`|`用于将一个命令的输出作为另一个命令的输入,`&gt;`和`&lt;`分别用于重定向输出和输入。例如,`dir &gt; list.txt`将目录列表保存到文本文件。 7. **网络命令**:如`net use`用于管理网络连接,`...

    DOS教程零基础到高手速成

    3. 命令行管道与重定向:了解如何利用管道(|)和重定向(&gt;、&lt;)符号将一个命令的输出作为另一个命令的输入,或者将输出保存到文件。 四、DOS高级应用 1. DEBUG工具:学习使用DEBUG命令进行低级程序调试,理解内存...

Global site tag (gtag.js) - Google Analytics