`
isiqi
  • 浏览: 16493636 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

DOS批处理几点说明

阅读更多

1. %* 用法

用于传递参数给批处理文件中的命令或批处理

例1. 批处理文件 test.bat, 内:

dir %*

命令:

D:\temp>setupCmdLine.bat "e:\test"

结果:
D:\temp>dir "e:\test"
驱动器 E 中的卷没有标签。
卷的序列号是 5EF3-A7A1

e:\test 的目录

2010-09-14 14:27 <DIR> .
2010-09-14 14:27 <DIR> ..
2010-09-14 14:27 <DIR> mytest
2010-09-14 14:27 <DIR> webservice
0 个文件 0 字节
4 个目录 5,349,498,880 可用字节

例2. 批处理文件test.bat内容:

for %%P in ( %* ) do echo %%P

命令:

D:\temp>test "e:\test" "e:\test2" "e:\temp"
结果:
D:\temp>for %P in ("e:\test" "e:\test2" "e:\temp") do echo %P

D:\temp>echo "e:\test"
"e:\test"

D:\temp>echo "e:\test2"
"e:\test2"

D:\temp>echo "e:\temp"
"e:\temp"

2. pause 自定义提示消息

pause命令执行后一般出现 "按任意键继续..." 字样,可以使用下面的手段定义消息:

@echo 使用我自己定义的消息

pause > nul

3. cd 命令

/d参数, 可以切换包括盘符的路径

命令:

D:\temp>cd /d "e:\test"

结果:

E:\test>

4. %cd%指当前路径

例:

命令:

C:\Documents and Settings\Administrator>echo %cd%

结果:
C:\Documents and Settings\Administrator

5. %0, %1, %2, %n

%0指批处理文件本身

%1指批处理文件第一个参数

%2指批处理文件第二个参数

例:文件 test.bat内容入下:

echo %%0=%0
echo %%1=%1
echo %%2=%2

命令:

D:\temp>setupCmdLine.bat param1 param2

结果:

D:\temp>echo %0=setupCmdLine.bat
%0=setupCmdLine.bat

D:\temp>echo %1=param1
%1=param1

D:\temp>echo %2=param2
%2=param2

6. %%

对%的转义,即作为%字符本身输出?

如上面的例子,将test.bat内容修改如下:

echo %0=%0
echo %1=%1
echo %2=%2

命令:

D:\temp>setupCmdLine.bat param1 param2

结果:

D:\temp>echo setupCmdLine.bat=setupCmdLine.bat
setupCmdLine.bat=setupCmdLine.bat

D:\temp>echo param1=param1
param1=param1

D:\temp>echo param2=param2
param2=param2

7. %~dp0

即对%0进行处理,去掉引号

%~d0 去引号,取盘符

例1. 批处理文件test.bat内容:

echo %1
echo %~d1
echo %~dp1

命令:

d:\temp>test "e:\test"

结果:

D:\temp>echo "e:\test"
"e:\test"

D:\temp>echo e:
e:

D:\temp>echo e:\
e:\

例2.

命令:

d:\temp>test "e:\test\"

结果:

D:\temp>echo "e:\test\"
"e:\test\"

D:\temp>echo e:
e:

D:\temp>echo e:\test\
e:\test\ (注意这里的区别,test\被加了进来)

例3.

test.bat内容:

@echo %1
@echo %~d1
@echo %~dp1
@echo %~dpn1

命令:

D:\temp>setupCmdLine.bat "e:\test\test.dat"
结果:
D:\temp>SET CUR_DIR=D:\temp
"e:\test\test.dat"
e:
e:\test\
e:\test\test
e:\test\test.dat


d-取盘符; p-取路径; n-取文件名

命令参考:

~I - 删除任何引号("),扩充 %I
%~fI - 将 %I 扩充到一个完全合格的路径名
%~dI - 仅将 %I 扩充到一个驱动器号
%~pI - 仅将 %I 扩充到一个路径
%~nI - 仅将 %I 扩充到一个文件名
%~xI - 仅将 %I 扩充到一个文件扩展名
%~sI - 扩充的路径只含有短名
%~aI - 将 %I 扩充到文件的文件属性
%~tI - 将 %I 扩充到文件的日期/时间
%~zI - 将 %I 扩充到文件的大小


分享到:
评论

相关推荐

    dos批处理脚本命令详解

    通过以上几个实例,我们可以看到DOS批处理在实际应用中的多样性和实用性。学习DOS批处理不仅需要扎实的DOS基础知识,还需要具备一定的逻辑思维能力,以便理解和编写复杂的批处理脚本。随着DOS逐渐被更现代的操作系统...

    网络\防毒批处理———dos批处理命令

    为了编写一个有效的防毒批处理脚本,需要注意以下几点: 1. **了解病毒行为**:研究常见的病毒传播途径和感染机制,针对性地编写防护措施。 2. **系统文件保护**:对系统关键文件设置适当的权限和属性,如上述示例中...

    DOS批处理文件BAT教程.pdf

    DOS批处理文件支持以下几种形式的`if`命令: - **字符串比较**: - `if "参数" == "字符串" 待执行的命令` - 例如,`if "%1" == "a" format a:`,如果第一个参数是"a",则格式化A盘。 - **文件存在性检查**: - `...

    dos批处理echo命令详解

    虽然`echo`命令非常实用,但在使用时也需要注意以下几点: - 在复杂的批处理脚本中,合理地使用`echo on`和`echo off`可以帮助调试脚本,但过多的输出可能会影响脚本的执行效率。 - 使用`echo`命令输出到文件时,请...

    dos批处理文件设计技巧

    在“dos批处理文件设计技巧”这个主题中,我们可以深入探讨以下几个关键知识点: 1. **批处理文件创建**:创建批处理文件非常简单,只需使用任何文本编辑器(如Notepad)打开新文件,输入DOS命令,然后将其保存为....

    用DOS批处理文件实现oracle自动备份,具有动态创建备份目录功能

    要结合DOS批处理文件实现自动备份,我们需要完成以下几个步骤: 1. **配置环境变量**:确保%ORACLE_HOME%和%PATH%环境变量已经设置正确,使得RMAN可以在命令行环境下找到相关的二进制文件。 2. **编写批处理脚本**...

    MS-DOS 批处理文件电脑磁盘整理工具.rar

    在使用批处理文件时,用户需要注意以下几点安全性和效率问题: 1. **权限管理**: 确保批处理文件不会误操作重要文件或系统文件。 2. **错误处理**: 在批处理文件中加入错误检查和恢复机制,避免因某个命令失败导致...

    MS-DOS 批处理程序应用与技巧

    MS-DOS批处理程序是早期计算机用户和系统管理员常用的一种自动化工具,用于简化日常的命令行操作。在 DOS 环境下,用户可以编写批处理文件(通常以 .bat 或 .cmd 结尾),将一系列命令集合在一起,一次性执行,大大...

    DOS批处理高级教程

    此文档在网上可以搜到很多免费版本的,本文档比百度文库的最后稍微多了几节内容。 我用了1天半时间囫囵吞枣一番,总体感觉文档写的比较流畅,解释问题也很清楚,读起来并不困难,因此吐血推荐给初学者~ 阅读过程中,...

    dos批处理学习

    在上述文档中,提到了几个与批处理相关的知识点: 1. 批处理的本质是一系列DOS命令按一定顺序排列形成的集合。DOS命令是批处理脚本的基础,每个命令执行一个特定的操作。这些命令可以是内置于DOS系统中的,也可以是...

    批处理转换为可执行文件

    在使用"bat2exe.exe"这样的工具时,需要注意以下几点: 1. **安全性**:将批处理转换为EXE可以隐藏脚本的内部命令,防止他人轻易查看和篡改。但是,这也可能为恶意软件提供伪装,因此,只应信任来源可靠的EXE文件。...

    MS-DOS6.2批处理文件高级指南.rar

    这份指南可能涵盖了以下几个关键知识点: 1. **批处理文件的基础概念**:批处理文件(Batch File)是DOS环境下的文本文件,通常以`.bat`为扩展名,其中包含了一系列DOS命令,执行时会按顺序运行这些命令。 2. **...

    300个批处理程序代码.rar

    在学习这些批处理程序代码时,应注意以下几点: - 了解每个命令的作用和参数。 - 学习如何使用条件语句(IF)和循环结构(FOR)来控制程序流程。 - 掌握批处理文件的结构,如如何定义和调用函数,以及如何处理错误。...

    GRUBDOS内置菜单编辑批处理

    编辑GRUBDOS内置菜单通常涉及以下几个步骤: 1. **创建批处理脚本**:批处理脚本是包含一系列命令的文本文件,用于自动化执行任务。在GRUBDOS中,这些命令用于定义菜单项、指定操作系统位置、设置启动参数等。例如...

    系统工具批处理 批处理文件

    批处理文件的创建过程涉及以下几个关键知识点: 1. **命令语法**:批处理文件基于DOS命令行接口,因此了解各种DOS命令如`COPY`, `DEL`, `REN`, `MD`, `CD`, `ECHO`, `PAUSE`等至关重要。例如,`COPY`用于复制文件,...

    如何编写批处理文件批处理文件批处理文件

    以上是MS的官方帮助,下面我们举几个例子来具体说明一下For命令在入侵中的用途。 sample2: 利用For命令来实现对一台目标Win2k主机的暴力密码破解。 我们用net use \ipipc$ "password" /u:"administrator"来尝试这...

    批处理教程大全学习之用

    批处理教程大全的学习内容广泛,包括以下几个核心知识点: 1. **批处理基础**:理解批处理的基本概念,如批处理文件的创建、执行机制和语法结构。批处理文件是由一系列DOS命令组成的文本文件,例如`COPY`, `DEL`, `...

    批处理辅助器 里面有很多很难找的批处理

    在使用批处理辅助器时,需要注意以下几点: 1. 了解命令语法:每个命令都有其特定的参数和用法,需查阅文档或在线资源学习。 2. 错误处理:考虑脚本可能遇到的问题,如文件不存在、权限不足等,加入适当的错误处理...

    批处理生成器,实用批处理生成器

    7. **批处理生成器的使用**:使用批处理生成器,用户通常需要选择或输入以下几个方面: - **命令类型**:选择要执行的动作,如文件操作、系统操作等。 - **参数设置**:配置命令的具体参数,如文件路径、操作条件...

Global site tag (gtag.js) - Google Analytics