
一篇 : Windows中的批处理的常用符号介绍
1.@ 命令行回显屏蔽符
ECHO OFF可以关闭掉整个批处理命令的回显,但不能关掉ECHO OFF这个命令本身,现在我们在ECHO OFF这个命令前加个@,就可以达到所有命令均不回显的要求。
该符号在批处理中的作用是关闭当前行命令的回显,也就是不显示执行的是什么命令,只显示命令的结果!
2.> 重定向符 将>之前的命令执行的结果输出到>之后指定的设备或文件中去,特定的文件或标准输出(stdout--默认为系统控制台),若文件中有数据则覆盖。
>> 重定向符
需要显示的数据追加到指定的输出文件之中,而不覆盖原来的内容。
< 输入重定向
>&将一个句柄的输出写入到另一个句柄的输入中
<&刚好和>&相反,从一个句柄读取输入并将其写入到另一个句柄输出中
常用句柄0、1、2,未定义句柄3-9
其中的1与2都是代表某个数据流输入输出的地址(NT CMD 称之为句柄,MSDOS称之为设备)。
句柄0:标准输入stdin,键盘输入
句柄1:标准输出stdout,输出到命令提示符窗口(console,代码为CON)
句柄2:标准错误stderr,输出到命令提示符窗口(console,代码为CON)
其中的stdin可被<重定向,stdout可被>、>>重定向,而stderr在DOS下不可直接重定向,只有通过ctty或其它命令将系统控制权转交给其它设备的方式,来间接完成。
注意:如果用在 set /a 语句中,则>表示分组,>>表示逻辑移位。
Dos代码
@echo off
@rem echo 关闭命令显示,@关闭echo off本身的显示
rem ==============设置标题title=================
rem -使用该文件的名称作为标题
title 测试bat的文件(test.bat--重定向)
rem ===============重定向符>=====================
rem 将当前文件的内容输出到指定的文件tb.txt而非控制台
type d:testbaktt.txt>d:testbaktb.txt
rem 将特定的字符串"Hello China "(注意最后的空格)写入到指定的文件
echo Hello China >d:testbaktc.txt
rem ===============重定向符>>====================
echo hello>d:testbaktd.txt
echo world>>d:testbaktd.txt
rem ===============重定向符<=====================
rem 重新设定当前时间
echo 2010-01-12>d:testbakte.txt
date <d:testbakte.txt
del d:testbakte.txt
rem ===============重定向符<=====================
rem 如果e盘存在则将其下面的文件信息输出到te.txt 否则将错误信息输出到err.txt
dir e: 1>d:testbakte.txt 2>d:testbakerr.txt
@pause
3.| 命令管道符
管道命令,将|之前的命令的输出作为|之后的命令的输入。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-79894-1.html
想搞台独的人
是该出手了