首页 > 代码库 > DOS命令

DOS命令

DOS命令

  DOS命令,是DOS操作系统的命令,是一种面向磁盘的操作命令,主要包括目录操作类命令、磁盘操作类命令、文件操作类命令和其它命令。DOS命令不区分大小写,比如C盘的Program Files,在dos命令中完全可以用"progra~1"代替,加上英文引号是因为名称的中间有空格(即多于一个词). 代表当前文件夹.. 代表上层目录,如命令 cd .. 就是回到上层目录。文件夹是不能通过命令行(只能打开某个文件)打开的,因为它下边还有子目录,命令行只会进入到它的下级目录里。

DOS常用命令:

  • cls   清屏
  • cd    改变当前目录       
  • edit   文本编辑
  • dir    列文件名
  • ren    改变文件名
  • move   移动文件,改目录名
  • copy  拷贝文件         
  • del    删除文件
  • md   建立子目录
  • rd    删除目录
  • deltree  删除目录树 
  • tree    显示命令树结构     
  • type   显示文件内容
  • more  分屏显示
  • attrib  设置文件属性
  • mem   查看内存状况       
  • date   显示及修改日期
  • time    显示及修改时间
  • set    设置环境变量
  • debug   程序调试命令
  • shutdown   关机
  • ping    查看网络连通情况
  • diskcopy 制磁盘          
  • sys     制作DOS系统盘
  • format   格式化磁盘 
  • fdisk    硬盘分区
  • fasthelp  快速显示帮助信息
  • ver     显示DOS版本

DOS特殊命令应用技巧:

  1. 向上箭头"↑"和向下箭头"↓"和向右箭头 ————回看上一次执行的命令
  2. "Ctrl+C" 组合键或"Break"键————中断操作,返回操作系统
  3. 鼠标操作"标记"————用来选中文本,再按“Enter”键可复制文本
  4. 鼠标操作"粘贴"————用来把剪贴板内容粘贴到提示符下
  5. "F7"键 ————查看及执行用过的命令
  6. "/?" ————指定命令帮助
  7. ">" 及">>" ————文件重定向

运行命令

  运行命令主要是DOS操作系统的运行方式。DOS时代的时候,为了方便用户的操作,微软公司将一些常用的命令,如DIR,CD等命令全部集成在系统里面。这对于DOS来说是一个很大的优点。而存放这些内部命令的文件是“Command”(文件后缀.com)。它与IO.sysMsdos.sys一起成为DOS系统的三个重要文件。在DOS系统里面输入任何命令的时候,系统会先从COMMON(后缀.com)文件里面来寻找有没有这条命令,如果没有则转向寻找外部命令。

  外部命令其实就是一些可执行的文件(.exe文件)、程序文件(.com文件)和批处理文件(.bat)、不可执行文本(txt.shs)、防止破坏文件(.dll),也包括微软后来更新windows installer后而以.msi命名的文件

  建立一个批处理文件(.bat),将以下脚本放入其中,可将子文件夹内的文件所有.csf文件复制到当前文件夹:

#注意最后有个点一定要留,它代表当前目录@echo offfor /r . %%a in (*.csf) do if exist "%%a" copy /y "%%a" .

Shell(计算机外壳)

  在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command和后来的cmd.exe。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的shell有标准的Bourne shell (sh)C shell (csh)。传统意义上的shell指的是命令行式的shell

  文字操作系统与外部最主要的接口就叫做shell,shell是操作系统最外面的一层。shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。shell提供了你与操作系统之间通讯的方式,这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。shell script是放在文件中的一串shell和操作系统命令,它们可以被重复使用。本质上,shell script是命令行命令简单的组合到一个文件里面。
  
  在linux中shell编程的作用很重要,想熟练的操作linux你必须精通shell编程日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写shell脚本,那么你就不算一个合格的管理员目前很多单位在招聘linux系统管理员时,shell脚本的编写是必考的项目有的单位甚至用shell脚本的编写能力来衡量这个linux系统管理员的经验是否丰富

 

附:

DOS命令中字符的应用:

  1、单符号

  【~】

  ① 在for中表示使用增强的变量扩展。

  ② 在%var:~n,m%中表示使用扩展环境变量指定位置的字符串。

  ③ 在set /a中表示一元运算符,将操作数按位取反。

  【!】

  ① 在set /a中一元运算符,表示逻辑非。比如set /a a=!0,这时a就表示逻辑1。

  【@】

  ① 隐藏命令行本身的回显,常用于批处理中。

  【$】

  ① 在findstr命令里面表示一行的结束。

  ② 在prompt命令里面,表示将其后的字符转义(符号化或者效果化)。

  【%】

  ① 在set /a中的二元运算符,表示算术取余。

  ② 命令行环境下,在for命令in前,后面接一个字符(可以是字母、数字或者一些特定字符),表示指定一个循环或者遍历指标变量。

  ③ 批处理中,后接一个数字表示引用本批处理当前执行时的指定的参数。

  ④ 其它情况下,%将会被脱去(批处理)或保留(命令行)

  【^】

  ① 取消特定字符的转义作用,比如& | > < ! "等,但不包括%。比如要在屏幕显示一些特殊的字符,比如> >> | ^ &等符号时,就可以在其前面加一个^符号来显示这个^后面的字符了,^^就是显示一个^,^|就是显示一个|字符了;

  ② 在set/a中的二元运算符,表示按位异或。

  ③ 在findstr/r的[]中表示不匹配指定的字符集。

  【&】

  ① 命令连接字符。比如我要在一行文本上同时执行两个命令,就可以用&命令连接这两个命令。

  ② 在set/a中是按位与。

  【*】

  ① 代表任意个任意字符,就是我们通常所说的"通配符";比如想在c盘的根目录查找c盘根目录里所有的文本文件(.txt),那么就可以输入命令"dir c:\*.txt"。

  ② 在set /a中的二元运算符,表示算术乘法。

  ③ 在findstr/r中表示将前一个字符多次匹配。

  【-】

  ① 范围表示符,比如日期的查找,for命令里的tokens操作中就可以用到这个字符。

  ② 在findstr/r中连接两个字符表示匹配范围。

  ③ -跟在某些命令的/后表示取反向的开关。

  ④ 在set /a中:

  1.表示一个负数。

  2.表示算术减运算。

  【+】

  ① 主要是在copy命令里面会用到它,表示将很多个文件合并为一个文件,就要用到这个+字符了。

  ② 在set/a中的二元运算符,表示算术加法。

  【:】

  ① 标签定位符,表示其后的字符串为以标签,可以作为goto命令的作用对象。比如在批处理文件里面定义了一个":begin"标签,用"goto begin"命令就可以转到":begin"标签后面来执行批处理命令了。

  ② 在%var:string1=string2%中分隔变量名和被替换字串关系。

  【|】

  ① 管道符,就是将上一个命令的输出,作为下一个命令的输入."dir /a/b |more"就可以逐屏的显示dir命令所输出的信息。

  ② 在set/a中的二元运算符,表示按位或。

  ③ 在帮助文档中表示其前后两个开关、选项或参数是二选一的。

  【/】

  ① 表示其后的字符(串)是命令的功能开关(选项)。比如"dir /s/b/a-d"表示"dir"命令指定的不同的参数。

  ② 在set/a中表示除法。

  【>】

  ① 命令重定向符,

  参数:命令+ > +写入路径\文件名

  实例:

  echo 燕大欢迎你 >d:\1.txt ;写入文本到指定文件(如果文件存在则替换)

  ② 在findstr/r中表示匹配单词的右边界,需要配合转义字符\使用。

  【<】

  ① 将其后面的文件的内容作为其前面命令的输入。

  ② 在findstr/r中表示匹配单词的左边界,需要配合转义字符\使用。

  【=】

  ① 赋值符号,用于变量的赋值。比如"set a=windows"的意思意思是将"windows"这个字符串赋给变量"a"。

  ② 在set/a中表示算术运算,比如"set /a x=5-6*5"。

  【\】

  ① 这个"\"符号在有的情况下,代表的是当前路径的根目录.比如当前目录在c:\windows\system32下,那么你"dir \"的话,就相当与"dir c:\"。

  ② 在findstr/r中表示正则转义字符。

  【,】

  ① 在set /a中表示连续表达式的分割符。

  ② 在某些命令中分割元素。

  【.】

  ① 在路径的\后紧跟或者单独出现时:

  一个.表示当前目录。

  两个.表示上一级目录。

  ② 在路径中的文件名中出现时:

  最后的一个.表示主文件名与扩展文件名的分隔。

  【?】

  ① 在findstr/r中表示在此位置匹配一个任意字符。

  ② 在路径中表示在此位置通配任意一个字符。

  ③ 紧跟在/后表示获取命令的帮助文档。

  2、多符号(符号不能分隔)

  【&&】

  ① 连接两个命令,当&&前的命令成功时,才执行&&后的命令。

  【||】

  ① 连接两个命令,当||前的命令失败时,才执行||后的命令。

  【>&】

  ① 将一个句柄的输出写入到另一个句柄的输入中。

  【<&】

  ① 从一个句柄读取输入并将其写入到另一个句柄输出中。

  【%%】

  ① 两个连续的%表示在预处理中脱为一个%。

  ② 批处理中,在for语句的in子句之前,连续两个%紧跟一个字符(可以是字母、数字和一些特定字符),表示指定一个循

  环或者遍历指标变量。

  ③ 批处理中,在for语句中,使用与in之前指定的指标变量相同的串,表示引用这个指标变量。

  【>>】

  ① 命令重定向符,将其前面的命令的输出结果追加到其后面。

  参数:命令+ >> +写入路径\文件名

  实例:

  echo 燕大欢迎你 >d:\1.txt ;写入文本到指定文件(如果文件存在则替换)

  netstat -an >>d:\1.txt ;即追随‘1.txt’的尾端继续写入‘netstat -an’命令输出结果

  ② 在set /a中的二元运算符,表示逻辑右移。

  【==】

  ① 在if命令中判断==两边的元素是否相同。

  【<<】

  ① 在set /a中的二元运算符,表示逻辑左移。

  【+=】

  ① 在set /a中的二元运算符。例如set /a a+=b表示将a加上b的结果赋值给a。

  【-=】

  ① 在set /a中的二元运算符。例如set /a a-=b表示将a减去b的结果赋值给a。

  【*=】

  ① 在set /a中的二元运算符。例如set /a a*=b表示将a乘以b的结果赋值给a。

  【/=】

  ① 在set /a中的二元运算符。例如set /a a/=b表示将a加上b的结果赋值给a。

  【%=】

  ① 在set /a中的二元运算符。例如set /a a%=b表示将a除以b的余数赋值给a。

  注:命令行可以直接用 set /a a%=b ,在批处理里面可以用 set /a a%%=b 。

  【^=】

  ① 在set /a中的二元运算符。例如set /a a"^="b表示将a与b按位异的结果赋值给a。

  注:这里 "^=" 加引号是为了防止^被转义,下同。

  【&=】

  ① 在set /a中的二元运算符。例如set /a a"&="b表示将a与b按位与的结果赋值给a。

  【|=】

  ① 在set /a中的二元运算符。例如set /a a"|="b表示将a与b按位或的结果赋值给a。

  【<<=】

  ① 在set /a中的二元运算符。例如set /a a"<<="b表示将a按位左移b位的结果赋值给a。

  【>>=】

  ① 在set /a中的二元运算符。例如set /a a">>="b表示将a按位右移b位的结果赋值给a。

  【\<】

  ① 在findstr的一般表达式中表示字的开始处。

  【\>】

  ① 在findstr的一般表达式中表示字的结束处。

  【! !】

  ① 当启用变量延迟时,使用!!将变量名扩起来表示对变量值的引用。

  【‘ ‘】

  ① 在for/f中表示将它们包含的内容当作命令行执行并分析其输出。

  ② 在for/f "usebackq"中表示将它们包含的字符串当作字符串分析。

  【( )】

  ① 命令包含或者是具有优先权的界定符,比如for命令要用到这个(),我们还可以在if,echo等命令中见到它的身影。

  ② 在set /a中表示表达式分组。

  【" "】

  ① 界定符,在表示带有空格的路径时常要用""来将路径括起来,在一些命令里面也需要" "符号。

  ② 在for/f中将表示它们包含的内容当作字符串分析。

  ③ 在for/f "usebackq"表示它们包含的内容当作文件路径并分析其文件的内容。

  ④ 在其它情况下表示其中的内容是一个完整的字符串,其中的>、>>、<、&、|、空格等不再转义。

  【` `】

  ① 在for/f中表示它们所包含的内容当作命令行执行并分析它的输出。

  【[ ]】

  ① 在帮助文档表示其中的开关、选项或参数是可选的。

  ② 在findstr /r中表示按其中指定的字符集匹配

 

DOS命令