《DOS快餐店》笔记

1、编写批处理清空临时文件
 @echo off
 cd %Temp%
 for /d %%d in (*) do rd /s /q "%%d"
 del /f /q *.*
2、echo命令
 功能:打开或关闭命令回显
 语法:echo [on|off] [message]
 参数:on—打开命令回显;off—关闭命令回显
 特殊用法:【echo】 不带任何参数将显示当前回显设置
  【echo.】显示一个空行
 【@echo off】:关闭所有命令(包括这条命令)的回显
 【echo off】:关闭其他所有命令(不包括这条命令)的回显
 【@】:关闭紧跟其后的一条命令的回显
3、cd(chdir)命令
 (1)功能:显示当前目录的名称或更改当前目录
 (2)语法:cd [[/d] [drive:][path] [..]]
 (3)参数:/d 更改当前驱动器或驱动器的当前目录
 .. 要从子目录切换到它的上级目录(例:“cd ..”或“cd..”)。
 (4)特殊用法:“cd”不带任何参数将显示当前驱动器和目录(目录的名称)。“cd/”更改到根目录。
4、dir命令
 功能:列出目录和文件
 参数:【/p】:分页显示,p-page
  【/a】:显示指
  定属性的文件。d-目录,r-只读,h-隐藏,a-存档,s-系统,【
  -】表示“否”的前缀
  【/b】:使用空格式,没有标题信息或摘要
  【/o】:用分类
  显示文件,n-按名称(字母顺序),s-按大小(从小到大),e-按
  扩展名(字母顺序),d-按日期/时间,-颠倒顺序
5、支持参数的文件清单脚本
 不支持参数的
  @echo off
  dir /o:n /b *.doc > c:/list.txt
 支持参数的
  @echo off
  if {%2} == {} (set mypath=) else set mypath=%2/
  dir /on /b %mypath%*.%1  > c:/list.txt
  if errorlevel 1 echo 命令格式:makelist {文件扩展名} [驱动器:][路径] > c:/list.txt
6、dir c:/windows/*.exe | find "win"
 *-所有,任意
7、copy命令
 复制
  copy c:/test.txt d:/
 复制并改名
  copy c:/test.txt d:/test2.txt
 复制大量文件
  copy c:/movies d:/backup
  copy c:/movies/*.rm d:/backup
  copy c:/movies/*.rm d:/backup /y 【直接覆盖】
 合并文件
  copy /b c:/1.txt+c:/2.txt c:/3.txt
8、md命令
 功能:创建目录
  md test
  cd test
  md cfan
 一次创建多级目录
  md c:/test/cfan
 一次创建多个子目录
  md a b c
  md c:/a d:/aa
 备份doc文件到d:/myfolder/word
  @echo off
  if not exist d:/myfolder/nul md d:/myfolder
  if not exist d:/myfolder/word/nul md d:/myfolder/word
  cd c:/myfolder
  cd d:/myfolder/word
  copy /v /y c:*.doc d:
 支持参数的备份各种格式文档
  @echo off
  if {%2} == {} (set mypath2=) else set mypath2=%2
  set mypath1=c:/myfolder
  copy /v /y %mypath1%/*.%1 %mypath2%
  if errorlevel 1 echo 命令格式:backup 文件扩展名 [目标目录]
  if errorlevel 1 pause
 一次备份多个文件扩展名的文档
  @echo off
  cd c:/myfolder
  cd d:/myfolder
  for %%d in (txt doc xls jpg gif mp3) do if not exist d:%%d/nul md d:%%d
  for %%f in (txt doc xls jpg gif mp3) do copy /v /y c:*.%%f d:%%f
9、del命令
 功能:删除文件
  del c:/windows/trajon.exe
  del d:/movies/*.rm
  del /p d:/games/*.* 【删除前要确认】
  del c:/windows/sys.dll /ars 【a-
  属性,r-只读,s-系统,a-存档】
  del c:/windows/game.log /f 【删除只读文件】
  del d:/movies/*.* /a-s 【删除非系统属性的文件】
  del c:/windows/web/*.htt /s 【删除所有】
  del d:/movies/*.* /q 【安静模式,不提示】
10、rd命令
 删除目录
  rd d:/movies /s 【删除movies下的所有文件、目录】
  rd d:/movies /s/q 【安静模式】
 删除系统临时文件
  @echo off
  del %temp%/*.* /s/q
12、date和time
 date /t  直接显示日期
 time /t  直接显示时间
 突破软件试用时间限制
  @echo off
  date 2005-03-15
  d:/abc.exe  
 禁止用户在指定日期运行QQ
  @echo off
  if "%DATE%" NEQ "2010-06-15 星期二" qq.exe else goto err
  exit
  :err
  echo 今天不准用QQ聊天
  pause
 记录QQ的使用情况
  @echo off
  echo -------------------- >> "log.txt"
  echo QQ运行日期=%DATE% >> "log.txt"
  echo QQ运行时间=%TIME% >> "log.txt"
  start /w regedit /e reg.txt HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer
  type reg.txt | find "Logon User Name" >> "log.txt"
  del reg.txt > nul
  qq.exe
13、ren和replace命令
 ren:重命名文件
  ren d:/a.txt b.txt
  ren d:/a.txt b.bak
 replace:替换文件
  replace d:/a.txt d:/backup 【用D:/a.txt替换D:/backup下的同名文件】
  replace d:/a.txt d:/backup /a 【将D:/a.txt添加到D:/backup】
   【在、d:/backup目录中不包含a.txt】
  replace d:/a.txt d:/backup /s 【用D:/a.txt替换D:/backup及其子目录下所有的同名文件】
  replace d:/a.txt d:/backup /u 【只替换比源文件旧的文件】
14、attrib和at命令的使用
 00:00备份
  at 00:00 cmd /c copy C:/Documents/*.* C:/MyDocs
 attrib
  a“存档”、s“系统”、h“隐藏”、r“只读”
  attrib d:/a.txt
  attrib +r d:/a.txt 【增加只读属性】
  attrib -h d:/a.txt 【清除隐藏属性】
  attrib +h d:/movie/*.rmvb /s 【批量操作文件】
  attrib +h d:/movie /s /d 【也处理目录】
 at命令
  at 16:00 calc.exe
  at 2 /delete 【删除ID为2的计划任务】
  at /delete 【删除所有任务】
  at 2 /delete /yes 【不用确认】
  at 16:30 /interactive calc.exe 【以前台方式运行calc.exe】
  at 16:30 /every:16 c:/run.bat 【在每月16日的16:30运行】
  at 16:30 /next:16 c:/run.bat 【下个月16日执行】
15、find和tree命令
 find
  find "software" list.txt
  find /c "software" list.txt 【返回出现的次数】
  find /n "software" list.txt 【显示行号】
  find /i "software" list.txt 【忽略大小写】
  find /v "software" list.txt 【找出文件中不包含指定字符串的行】
  find /c /i "software" list.txt
  find /c "hello" d:/docs/*.txt
 tree
  显示当前目录下的结构图
  tree d:/test
  tree d:/test /f 【显示D:/test目录下的结构图,包含文件名】
 find/tree
  tree g:/ /f > c:/list.txt
  tree d:/test /f | find /c /i "sample.txt"
16、终极DOS技能——循环(上)
 for %%f in (*.bat *.txt) do type %%f
  在当前目录下搜索所有BAT和TXT文件,并逐个将搜索到的文件名存入变量%%f中,每搜索到一个,就执行type命令显示%%f变量中指定的文件。
 有始有终的数字序列
  for /L %%c in (3,1,5) do echo %%c
  for /L %%变量 in (开始,步进,结束) do 循环执行指定的命令 [命令参数]
 一大堆文件
  for %%变量 in (文件集合) do 循环执行指定的命令 [命令参数]

 玩转目录遍历
  for %%c in (*.txt) do type %%c
  for /d %%c in (*.txt) do type %%c 【遍历目录】
      @echo off
      for /d %%i in (c:/*) do echo %%i
      显示C盘根目录下的全部目录
      for /d %%i in (???) do echo %%i
      显示当前目录下,名字只有1-3个字母的目录
     
 子目录也不能放过
  for /r %%变量名 IN (set) DO command
      @echo off
      for /r c:/ %%i in (*.exe) do echo %%i
      pause
      列出c盘全部的exe文件
     
 应用:合并所有的文本文件
  @echo off
  type NUL > all.txt
  for %%f in (*.txt) do copy /b all.txt+%%f all.txt
 将1到100的数字按顺序逐个写入num.txt中,每个数字占一行。
  for /L %c in(1,1,100) do echo %c >>e:/a.txt
 将当前目录下的所有文件都加上“dos”前缀
  for %c in (*.*) do ren "%c" "doc%c"
 报告每个硬盘分区的剩余空间
  for %a in (c: d: e:) do @dir %a | find "可用"
 
17、终极技能——循环(下)
 在每个文件最后加上一行宣传语
  @echo off
  for %%f in (*.txt) do (
  echo. >> %%f
  echo DOS快餐店收集整理 >> %%f
  )
 整理顾客资料
  原:
  张三 20 CFan 男 13800000000 我叫张三……
  李四 30 Digi 女 13900000000 我叫李四……
  新:
  张三 13800000000
  李四 13900000000
  @echo off
  for /f "eol=; tokens=1,5 delims=, " %%i in (custom.txt) do echo %%i %%j >> new.txt

阅读更多
想对作者说点什么? 我来说一句

DOS快餐店 很初级的书

2008年12月04日 79KB 下载

dos快餐店

2008年07月29日 40KB 下载

dos快餐店.pdf

2008年06月22日 327KB 下载

vbs快餐店

2008年07月29日 9.93MB 下载

没有更多推荐了,返回首页

不良信息举报

《DOS快餐店》笔记

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭