比较详细的手把手教你写批处理(willsort题注版)第1/5页

 更新时间:2008年09月03日 11:27:35   作者:  
Climbing 兄可谓用心良苦,受其感昭,略紧微薄之力;原文内容一字未易,仅于每段之下另加题注,其文大多非为纠错,多是年来体会,或偶得,或渐悟,未免偏颇;又加近来俗事渐多,闲情愈少,心浮气燥,一蹴而就。义理悖逆,敬请斧正;措辞不当,尚请莫怪。
另,建议Climbing兄取文不用拘泥于国内,此类技术文章,内外水平相差极大;与其修正国内只言片语,不如翻译国外优秀著述。
--------------------------------------------------------
标题:手把手教你写批处理-批处理的介绍
作者:佚名
编者:Climbing

题注:willsort
日期:2004-09-21
--------------------------------------------------------
批处理的介绍


扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。

==== willsort 编注 =====================================================
.bat是dos下的批处理文件
.cmd是nt内核命令行环境的另一种批处理文件
从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。所以从某个程度分析,batch, unix shell, awk, basic, perl 等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同而已。甚至有些应用程序仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全不同。
========================================================================

首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。

==== willsort 题注 ====================================
批处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普通数据性文件,这缘于windows系统这个新型解释平台的涉入,使得批处理的应用越来越“边缘化”。所以我们讨论的批处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动。
========================================================================

其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。

==== willsort 编注 =====================================================
批处理文件(batch file)也可以称之为批处理程序(batch program),这一点与编译型语言有所不同,就c语言来说,扩展名为c或者cpp的文件可以称之为c语言文件或者c语言源代码,但只有编译连接后的exe文件才可以称之为c语言程序。因为批处理文件本身既具有文本的可读性,又具有程序的可执行性,这些称谓的界限是比较模糊的。
========================================================================

第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个良好的习惯是在硬盘上建立一个bat或者batch目录(例如C:\BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:\batch,你就可以在任意位置运行所有你编写的批处理程序。

==== willsort 编注 =====================================================
纯以dos系统而言,可执行程序大约可以细分为五类,依照执行优先级由高到低排列分别是:DOSKEY宏命令(预先驻留内存),COMMAND.COM中的内部命令(根据内存的环境随时进驻内存),以com为扩展名的可执行程序(由command.com 直接载入内存),以exe位扩展名的可执行程序(由command.com 重定位后载入内存),以bat位扩展名的批处理程序(由command.com 解释分析,根据其内容按优先级顺序调用第2,3,4,5种可执行程序,分析一行,执行一行,文件本身不载入内存)
========================================================================

第四,在DOS和Win9x/Me系统下,C:盘根目录下的AUTOEXEC.BAT批处理文件是自动运行批处理文件,每次系统启动时会自动运行该文件,你可以将系统每次启动时都要运行的命令放入该文件中,例如设置搜索路径,调入鼠标驱动和磁盘缓存,设置系统环境变量等。下面是一个运行于Windows 98下的autoexec.bat的示例:
@ECHO OFF
PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;C:\SYSTOOLS;C:\WINTOOLS;C:\BATCH
LH SMARTDRV.EXE /X
LH DOSKEY.COM /INSERT
LH CTMOUSE.EXE
SET TEMP=D:\TEMP
SET TMP=D:\TEMP

==== willsort 编注 =====================================================
AUTOEXEC.BAT为DOS系统的自动运行批处理文件,由COMMAND.COM启动时解释执行;
而在Win9x环境中,不仅增加支持了 DOSSTART.BAT, WINSTART.BAT 等许多其它自动运行的批处理文件,对AUTOEXEC.BAT 也增加了 .DOS .W40 .BAK .OLD .PWS 等许多变体以适应复杂的环境和多变的需求。
========================================================================

相关文章

  • ipc通道入侵相关命令整理

    ipc通道入侵相关命令整理

    我们在入侵的时候难免遇到忘记命令的时候,现在将我所知道的一些命令总结出来提供给各位。通过这些命令可以解决很大一部分新手的问题。首页我们也需要检查下安全,知道黑客是如何使用的。
    2011-02-02
  • dos下遍历目录和文件的代码(主要利用for命令)

    dos下遍历目录和文件的代码(主要利用for命令)

    对指定路径指定文件进行遍历的程序,这里有多个批处理代码,但运行好像有些问题,大家可以根据需要选择
    2012-09-09
  • 使用批处理bat更改hosts的多个方法

    使用批处理bat更改hosts的多个方法

    最近公司网站使用了cdn,如果用cdn访问网站会出现后台慢,前台修改模版不能实时发现问题,所以就需要我们修改hosts实现本地访问仍然是服务器源站,客户访问的都是前台不需要实时的,下面我们就分享下用bat实现修改hosts的方法
    2014-07-07
  • windows find findstr命令(cmd查找文档中的特定字符)

    windows find findstr命令(cmd查找文档中的特定字符)

    find 命令用于查找文档中的特定字符和数字及行号, 例如我们在阅读文档时, 使用的快捷键 Ctrl + F 来查找是一个效果, 经过 find 查找的字符也可以重定向到一个文本文档里面去, 提取特定的字符, 来进行文档的整合
    2025-03-03
  • 批处理学习教程

    批处理学习教程

    在入侵中,大家有过编一个简单的程序来实现你的目的,BAT应该是大家常用的吧。如果你还没学会,那就快看下面的吧,我相信它会对你有意而无害的
    2012-12-12
  • SunTB编写IP地址设置切换批处理

    SunTB编写IP地址设置切换批处理

    主机MAC与IP分配对应数据库,当内网有MAC绑定时可快速查询相应IP可按示例格式([MAC地址]IP地址)自行添加,每组数据单独一行
    2011-01-01
  • BAT命令连接局域网机子 并打开文件夹

    BAT命令连接局域网机子 并打开文件夹

    把下面的命令Copy到一文件,并保存为 .BAT 文件,以后双击这个文件就可以直接连接局域网的机子,并打开共享文件,按任意键就删除连接。注:username 和 password 为共享机子的访问密码。
    2009-07-07
  • cmd tree命令 以树形格式罗列文件

    cmd tree命令 以树形格式罗列文件

    tree ,在英语中的基本含义是“树”,在cmd中,tree命令的功能是以树形格式罗列文件。
    2009-07-07
  • 批处理 用户是否存在判断

    批处理 用户是否存在判断

    批处理实现的,判断windows用户是否存在的代码。
    2009-05-05
  • 百度贴吧上传图片方式附件利器

    百度贴吧上传图片方式附件利器

    通过这批处理将图片和文件合并成图片,通过更改扩展名切换图片和文件。这样就可以在百度贴吧上传图片式的附件。其实就是一句代码copy /b
    2012-01-01

最新评论