choice /c:yn:aaa echo aaa goto end :bbb echo bbb goto end :ccc echo ccc goto end :end
33.assoc和ftype文件关联
assoc 设置'文件扩展名'关联,关联到'文件类型';ftype 设置'文件类型'关联,关联到'执行程序和参数'。 当你双击一个.txt文件时,windows并不是根据.txt直接判断用 notepad.exe 打开,而是先判断.txt属于 txtfile '文件类型',再调用 txtfile 关联的命令行 txtfile=%SystemRoot%\\system32\\NOTEPAD.EXE %1。可以在\文件夹选项\→\文件类型\里修改这2种关联
assoc #显示所有'文件扩展名'关联
assoc .txt #显示.txt代表的'文件类型',结果显示 .txt=txtfile
assoc .doc #显示.doc代表的'文件类型',结果显示 .doc=Word.Document.8 assoc .exe #显示.exe代表的'文件类型',结果显示 .exe=exefile 如果不为文件类型指定任何参数,命令会删除文件扩展名的关联。 assoc .txt=txtfile 恢复.txt的正确关联 ftype #显示所有'文件类型'关联
ftype exefile #显示exefile类型关联的命令行,结果显示 exefile=\ assoc .txt=Word.Document.8 设置.txt为word类型的文档,可以看到.txt文件的图标都变了
ftype exefile=\ 恢复 exefile 的正确关联。如果该关联已经被破坏,可以运行 command.com ,再输入这条命令
34.attrib
attrib [ +r|-r] [ +s|-s] [ +h|-h] [ +c|-c] [ [ drive:] [ path] filename] +r 设置只读属性。 -r 清除只读属性。 +s 设置系统属性。 -s 清除系统属性。
+h 设置隐藏属性。 -h 清除隐藏属性。 +c 设置压缩属性。 -c 清除压缩属性。 前面是加号和减号,不是/
/S 处理当前文件夹及其所有子文件夹中的匹配文件。 /D 也处理文件夹。 例:g:\\a>attrib +r 1.txt
35.move 把文件或文件夹从A处移动到B处
基本格式为 move A B,B只能是目录路径。move不能跨分区移动文件夹,不能够识别出带隐藏或系统属性的文件,要移动此等文件,只能先用attrib命令去掉这些文件的隐藏或系统属性,再move。 1)、如果A、B同为文件夹名,则把A移动到B目录下; 2)、如果A为文件名,
① B为文件夹名的时候,将把A移动到B目录下;
② B为文件名的时候,将把A重命名为B;如果B所在的位置为另一目录,则表示在把A移动到B所在的目录下的同时,重命名为B。 move c:\\test.txt d:\\abc\\1.txt 如果有重名文件出现,move不会成功,它会询问你:改写××吗?(Yes/No/All):其中,××表示目的地的重名文件。如果选择Yes,将覆盖重名文件;如果选择No,则放弃move操作;如果选择All,则在批量move的时候,如果存在同名文件,将不再询问是否覆盖,而是直接覆盖掉重名文件。默认情况下,move 是带 /-y 开关的。
36.xcopy (外部命令)文件拷贝
xcopy d:\\mp3 e:\\mp3 /s/e/i/y 复制 d:\\mp3 文件夹、所有子文件夹和文件到 e:\\ ,覆盖已有文件。加 /i 表示如果 e:\\ 没有 mp3 文件夹就自动新建一个,否则会有询问。
即使使用/s、/e、/t参数,也无法复制最上层的那层目录,例:
G:\\backup\\taidian下有FMRecord和MicRecord两个目录和一些文件, xcopy /i /s /e /y /k G:\\backup\\taidian g:\\
此时,g:\\下产生FMRecord和MicRecord两个目录和那些文件,而不产生taidian这个文件夹。
/D:m-d-y 复制在指定日期或指定日期以后更改的文件。如果没有提供日期,只复制那些源时间比目标时间新的文件。
/P 创建每个目标文件之前提示您。
/S 复制目录和子目录以及目录和子目录下的文件,不包括空目录。 /E 复制目录和子目录以及目录和子目录下的文件,包括空目录。与 /S /E 相同。可以用来修改 /T。
/C 即使有错误,也继续复制。
/I 如果目标不存在,且要复制多个文件,则假定目标必须是目录。 /Q 复制时不显示文件名。
/F 复制时显示完整的源文件名和目标文件名。 /L 显示要复制的文件。
/H 也复制隐藏文件和系统文件。 /R 覆盖只读文件。
/T 创建目录结构,包括子目录,但不复制文件。不包括空目录。/T /E 包括空目录。
/U 只复制已经存在于目标中的文件。
/K 复制属性。一般的 Xcopy 会重设只读属性。 /Y 取消提示以确认要覆盖现有目标文件。 /-Y 要提示以确认要覆盖现有目标文件。
37.一些不常用的内部命令
>& 将一个句柄的输出写入到另一个句柄的输入中
<& 从一个句柄读取输入并将其写入到另一个句柄输出中 shift 命令行传递给批处理的参数不止9个时,用以切换参数 color 设置cmd窗口的显示颜色
pormpt 更改命令提示符号,默认都是 盘符:\\路径\\> ,如 c:\\>
subst (外部命令)映射磁盘。
subst z: \\\\server\\d #这样输入z:就可以访问\\\\server\\d了 subst z: /d #取消该映射
subst #显示目前所有的映射
38.format (外部命令)格式化硬盘
format c: /q/u/autotest
/q 表示快速格式化;/autotest表示自动格式化,不需要按 Y 确认;
/U 无条件格式化磁盘,格式化时将不保留磁盘原先的任何信息。对磁盘有一定磨损。(“/q”则不会对磁盘有磨损且数据可以恢复。)
format c: /c 仅适于 NTFS: 默认情况下,将压缩在该新建卷上创建的文件。 /FS:filesystem 指定文件系统类型(FAT、FAT32 或 NTFS)。
39.ping (外部命令)
ping -l 65500 -t 192.168.1.200 不停的向192.168.1.200计算机发送大小为65500byte的数据包
ping -n 10 127.0.0.1>nul ping自己10次,可用于批处理延时10秒
40.SC (外部命令)服务控制命令
sc create aaa displayname= bbb start= auto binpath= \创建服务,服务名称aaa,显示名称bbb,启动类型:自动,可执行文件的路径\sc description aaa \更改aaa的描述为ccc
sc config aaa start= disabled binpath= \-k netsvcs\更改aaa的启动类型:已禁用;更改aaa的可执行文件的路径\
sc config aaa start= demand displayname= ddd 更改aaa的启动类型:手动;更改aaa的显示名称ddd
sc start aaa启动aaa服务 sc stop aaa停止aaa服务 sc delete aaa删除aaa服务
41.pushd 和 popd 切换当前目录
@echo off
c: & cd\\ & md mp3 #在 C:\\ 建立 mp3 文件夹 md d:\\mp4 #在 D:\\ 建立 mp4 文件夹 cd /d d:\\mp4 #更改当前目录为 d:\\mp4
pushd c:\\mp3 #保存当前目录,并切换当前目录为 c:\\mp3 popd #恢复当前目录为刚才保存的 d:\\mp4 一般用处不大,在当前目录名不确定时,会有点帮助
42.findstr 字符串查找增强
/B 在一行的开始配对模式。 /E 在一行的结尾配对模式。
/L 按字使用搜索字符串。 /N 显示行号。
例:有一文件settings.txt,内容为 ???? fullScreen=no ???? 运行显示: 14:fullScreen=no
/R 将搜索字符串作为一般表达式使用。 findstr /r \
在123.txt中查找包含有 “icq”或“msn”的行,查找的多个字符串间用空格隔格开。
/S 在当前目录和所有子目录中搜索匹配文件。 findstr /s /i \
在当前目录和所有子目录中的txt文件中搜索字符串\(不区分字母大小写)。
/I 指定搜索不分大小写。 findstr /i \
在123.txt中查找包含有“MSN”这三个字符的行,且不区分大小写。
/M 如果文件含有匹配项,只打印其文件名。 /P 忽略有不可打印字符的文件。
/C:string 使用指定字符串作为文字搜索字符串。 除非参数有 /C 前缀,请使用空格隔开搜索字符串。
例如: FINDSTR \ 在文件 x.y 中寻找\或\ FINDSTR /C:\ 在文件 x.y 寻找 \。
/G:file 从指定的文件获得搜索字符串。 (/ 代表控制台)。 /D:dir 查找以分号为分隔符的目录列表
. 通配符: 任何字符,只能是一个,包括字母、数字、半角符号还有空格。 * 重复符: 代表前面字母的出现次数(出现次数从0到多次,0表示没有)。 findstr ak5* 123.txt
在文件123.txt中查找出现一个“ak”字符串,以及ak后面出现过0次或者任意次5的字符行。如: ak ak5 akbbb ak125 ak555
等都匹配。