导航:首页 > 程序命令 > dos命令defined用法

dos命令defined用法

发布时间:2022-09-12 03:15:06

Ⅰ 怎样用DOS命令或批处理实现发送一个文件的快捷方式至桌面上

发送快捷方式,由于批处理自身无法实现,所以我们借助VBS脚本代码实现。

在下面的代码中我将利用批处理调用VBS脚本以达到创建快捷方式的效果。

代码使用方法:只需复制代码后粘帖到新的空文本文件中,然后按照脚本中注释的要求去修改内容,并保存为后缀名为bat的文件,最后双击这个bat文件即可执行并创建快捷方式。

以下为脚本代码:

@echooff
::设置程序或文件的完整路径(必选)
setProgram=D:MyAppapp.exe

::设置快捷方式名称(必选)
setLnkName=我的APP程序

::设置程序的工作路径,一般为程序主目录,此项若留空,脚本将自行分析路径
setWorkDir=D:MyApp

::设置快捷方式显示的说明(可选)
setDesc=这是我的个人程序。

ifnotdefinedWorkDircall:GetWorkDir"%Program%"
(echoSetWshShell=CreateObject("WScript.Shell"^)
echostrDesKtop=WshShell.SpecialFolders("DesKtop"^)
echoSetoShellLink=WshShell.CreateShortcut(strDesKtop^&"\%LnkName%.lnk"^)
echooShellLink.TargetPath="%Program%"
echooShellLink.WorkingDirectory="%WorkDir%"
echooShellLink.WindowStyle=1
echooShellLink.Description="%Desc%"
echooShellLink.Save)>makelnk.vbs
echo桌面快捷方式创建成功!
makelnk.vbs
del/f/qmakelnk.vbs
exit
goto:eof
:GetWorkDir
setWorkDir=%~dp1
setWorkDir=%WorkDir:~,-1%
goto:eof

以下为脚本的命令说明图:

Ⅱ dos批处理

批处理弄个太高深的我怕没人看,今天就说说批处理文件的编写吧,从某种意义上说,批处理就是一种编程,其实批处理是一种宏,但是用途非常广泛,可以实现一些用软件才可以实现的简单功能。
希望大家仔细看,并跟帖讨论

跳转(可用作循环)的话可以是这样:
@echo off
:a
c:\winnt\system32\hacr.bin c:\inetpub\scripts\index.htm
goto a
echo off是为了隐藏下面语句的执行;
@符号是隐藏echo off这个语句;
:a是定义循环模块a(模块名字可以定义,后面可以有n条语句);
goto a是跳到a循环模块。
上面的.bat是个死循环,我改了主页后常常在后门中执行他,后门一天没关,hacr.bin一天没删,主页默认index.htm一天没改,主页也就一天该不回!
从多重跳转中跳出来可以这样写:
@echo off
goto b
:a
c:\winnt\system32\hacr.bin c:\inetpub\scripts\index.htm
goto end
:b
c:\winnt\system32\hacr.bin c:\inetpub\scripts\index.htm goto a
:end
循环的话,可以这样:
FOR /L %%i IN (1,1,5) do start c:\winnt\system32\notepad.exe
执行后打开notepad.exe 5次。哎,我用了2年dos,但bat的判断我还是记不太清了,好像是:
if exist filename command 这句意思是如果存在filename(必须是可执行文件)就执行后面的command。
应该还有一个如果不存在filename(必须是可执行文件)就执行后面的command的语句,可惜我实在忘了(以上实例均在win2k Pro下通过)。呵呵... 附录:if语句和for语句的help
1。IF [NOT] ERRORLEVEL number command IF [NOT] string1==string2 command IF [NOT] EXIST filename command NOT 指定只有条件为 false 的情况下, Windows 2000 才 应该执行该命令。
ERRORLEVEL number 如果最后运行的程序返回一个等于或大于 指定数字的退出编码,指定条件为true。
string1==string2 如果指定的文本字符串匹配,指定一个 true 条件。
EXIST filename 如果指定的文件名存在,指定一个 true 条件。
command 如果条件符合,指定要执行的命令。如果指定的 条件为 FALSE,ELSE 命令可随在命令之后,ELSE 命令将在 ELSE 关键字之后执行该命令。
ELSE 子句必须在 IF 之后出现在同一行上。例如:
IF EXIST filename. ( del filename. ) ELSE ( echo filename. missing. )
因为 del 命令需要用一个新行终止,以下子句不会有效: IF EXIST filename. del filename. ELSE echo filename. missing 由于ELSE 命令必须与 IF 命令的尾端在同一行上,以下子句也 不会有效: IF EXIST filename. del filename. ELSE echo filename. missing 如果都放在同一行上,以下子句有效: IF
EXIST filename. (del filename.) ELSE echo filename. missing 如果命令扩展名被启用,IF 会如下改变: IF string1 compare-op string2 command IF CMDEXTVERSION number command IF
DEFINED variable command 其中,比较运算符可以是: EQU - 等于 NEQ - 不等于
LSS - 小于 LEQ - 小于或等于 GTR - 大于 GEQ - 大于或等于 及 /I 命令选项;如果该命令选项被指定,则说明要进行的字符串比较不分 大小写。/I 命令选项可以用于 IF 的 string1==string2 的形式上。
这些 比较都是通用的;
原因是,如果 string1 和 string2 都是由数字 组成的,字符串会被转换成数字,进行数字比较。 CMDEXTVERSION 条件的作用跟 ERRORLEVEL 的一样,除了它 是在跟与命令扩展名有关联的内部版本号比较。第一个版本 是
1。每次对命令扩展名有相当大的增强时,版本号会增加一个。
命令扩展名被停用时,CMDEXTVERSION 条件不是真的。
如果已定义环境变量,DEFINED 条件的作用跟 EXISTS 的一样, 除了它取得一个环境变量,返回的结果是 true。
如果没有名为 ERRORLEVEL 的环境变量,%ERRORLEVEL% 会扩充为 ERROLEVEL 当前数值的字串符表达式;否则,您会得到 其数值。运行程序后,以下语句说明 ERRORLEVEL 的用法:
goto answer%ERRORLEVEL%
:answer0
echo Program had return code 0
:answer1
echo Program had return code 1
您也可以使用以上的数字比较:
IF %ERRORLEVEL% LEQ 1 goto okay
如果没有名为 CMDCMDLINE 的环境变量,%CMDCMDLINE% 将在 CMD.EXE 进行任何处理前扩充为传递给 CMD.EXE 的原始命令行;否则,您会得到其数值。
如果没有名为 CMDEXTVERSION 的环境变量,
%CMDEXTVERSION% 会扩充为 CMDEXTVERSION 当前数值的 字串符表达式;否则,您会得到其数值。
2。FOR %variable IN (set) DO command [command-parameters] %variable 指定可替换的参数。 (set) 指定一个或一组文件。可以使用通配符。
command 指定对每个文件执行的命令。
command-parameters 对特定命令所指定的参数。
在批处理文件中使用 FOR 命令时, 指定变量请使用 %%variable 而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I. 如果命令扩展名被启用,下列额外的 FOR 命令格式会受到 支持:
FOR /D %variable IN (set) DO command [command-parameters]
如果集中包含通配符,则指定与目录名匹配,而不与文件 名匹配。
FOR /R [drive:]path] %variable IN (set) DO command [command-parameters] 检查以 [drive:]path 为根的目录树,指向每个目录中的 FOR 语句。如果在 /R 后没有指定目录,则使用当前 目录。如果集仅为一个单点(.)字符,则枚举该目录树。
FOR /L %variable IN (start,step,end) DO command [command-parameters] 该集表示以增量形式从开始到结束的一个数字序列。
因此,(1,1,5) 将产生序列 1 2 3 4 5,(5,-1,1) 将产生 序列 (5 4 3 2 1)。
FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN (<|>command<|>) DO command [command-parameters]
或者,如果有 usebackq 选项:
FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN (<|>command<|>) DO command [command-parameters] filenameset 为一个或多个文件名。继续到 filenameset 中的 下一个文件之前,每份文件都已被打开、读取并经过处理。 处理包括读取文件,将其分成一行行的文字,然后将每行 解析成零或更多的符号。然后用已找到的符号字符串变量值
调用 For 循环。以默认方式,/F 通过每个文件的每一行中分开 的第一个空白符号。跳过空白行。您可通过指定可选 "options" 参数替代默认解析操作。这个带引号的字符串包括一个或多个 指定不同解析选项的关键字。这些关键字为:
eol=c - 指一个行注释字符的结尾(就一个)
skip=n - 指在文件开始时忽略的行数。
delims=xxx - 指分隔符集。
这个替换了空格和跳格键的 默认分隔符集。
tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代 的 for 本身。
这会导致额外变量名称的分配。m-n 格式为一个范围。
通过 nth 符号指定 mth。如果 符号字符串中的最后一个字符星号,
那么额外的变量将在最后一个符号解析之后 分配并接受行的保留文本。
usebackq - 指定新语法已在下类情况中使用:
在作为命令执行一个后引号的字符串并且一个单 引号字符为文字字符串命令并允许在 filenameset 中使用双引号扩起文件名称。
某些范例可能有助:
FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do @echo %i %j %k 会分析 myfile.txt 中的每一行,忽略以分号打头的那些行,将 每行中的第二个和第三个符号传递给 for 程序体;用逗号和/或 空格定界符号。请注意,这个 for 程序体的语句引用 %i 来 取得第二个符号,引用 %j 来取得第三个符号,引用 %k 来取得第三个符号后的所有剩余符号。对于带有空格的文件 名,您需要用双引号将文件名括起来。为了用这种方式来使 用双引号,您还需要使用 usebackq 选项,否则,双引号会 被理解成是用作定义某个要分析的字符串的。
%i 专门在 for 语句中得到说明,%j 和 %k 是通过 tokens= 选项专门得到说明的。您可以通过 tokens= 一行 指定最多 26 个符号,只要不试图说明一个高于字母 <|>z<|> 或 <|>Z<|> 的变量。请记住,FOR 变量名分大小写,是通用的;而且, 同时不能有 52 个以上都在使用中。 您还可以在相邻字符串上使用 FOR /F 分析逻辑;方法是, 用单引号将括号之间的 filenameset 括起来。这样,该字符 串会被当作一个文件中的一个单一输入行。
最后,您可以用 FOR /F 命令来分析命令的输出。方法是,将 括号之间的 filenameset 变成一个反括字符串。该字符串会 被当作命令行,传递到一个子 CMD.EXE,其输出会被抓进 内存,并被当作文件分析。因此,以下例子:
FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i
会枚举当前环境中的环境变量名称。
另外,FOR 变量参照的替换已被增强。您现在可以使用下列 选项语法:
~I - 删除任何引号("),扩充 %I
%~fI - 将 %I 扩充到一个完全合格的路径名
%~dI - 仅将 %I 扩充到一个驱动器号
%~pI - 仅将 %I 扩充到一个路径
%~nI - 仅将 %I 扩充到一个文件名
%~xI - 仅将 %I 扩充到一个文件扩展名
%~sI - 扩充的路径只含有短名
%~aI - 将 %I 扩充到文件的文件属性
%~tI - 将 %I 扩充到文件的日期/时间
%~zI - 将 %I 扩充到文件的大小
%~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个完全合格的名称。如果环境变量名
未被定义,或者没有找到文件,此组合键会扩充到
空字符串 可以组合修饰符来得到多重结果:
%~dpI - 仅将 %I 扩充到一个驱动器号和路径
%~nxI - 仅将 %I 扩充到一个文件名和扩展名
%~fsI - 仅将 %I 扩充到一个带有短名的完整路径名
%~dp$PATH:i - 查找列在路径环境变量的目录,并将
%I 扩充 到找到的第一个驱动器号和路径。
%~ftzaI - 将 %I 扩充到类似输出线路的 DIR
在以上例子中,%I 和 PATH 可用其他有效数值代替。%~ 语法
用一个有效的 FOR 变量名终止。
选取类似 %I 的大写变量名 比较易读,而且避免与不分大小写的组合键混淆。

前言

最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古语云:“授人以鱼,不如授人以渔。”因为网上好像并没有一个比较完整的教材,所以抽一点时间写了这片<<简明批处理教程> >给新手朋友们.也献给所有为实现网络的自由与共享而努力的朋友们.
批处理文件是无格式的文本文件,它包含一条或多条命令。它的文件扩展名为 .bat 或 .cmd。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。当然我们的这个版本的主要内容是介绍批处理在入侵中一些实际运用,例如我们后面要提到的用批处理文件来给系统打补丁、批量植入后门程序等。下面就开始我们批处理学习之旅吧。
一.简单批处理内部命令简介
1.Echo 命令
打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。
语法
echo [{on|off}] [message]
Sample:@echo off / echo hello world
在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。
2.@ 命令
表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
Sample:@echo off
@echo Now initializing the program,please wait a minite...
@format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。)
3.Goto 命令
指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。
语法:goto label (label是参数,指定所要转向的批处理程序中的行。)
Sample:
if {%1}=={} goto noparms
if {%2}=={} goto noparms(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。)
@Rem check parameters if null show usage
:noparms
echo Usage: monitor.bat ServerIP PortNumber
goto end
标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是标签,goto命令就是根据这个:来寻找下一步跳到到那里。最好有一些说明这样你别人看起来才会理解你的意图啊。
4.Rem 命令
注释命令,在C语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。
Rem Message
Sample:@Rem Here is the description.
5.Pause 命令
运行 Pause 命令时,将显示下面的消息:
Press any key to continue . . .
Sample:
@echo off
:begin
a:*.* d:\back
echo Please put a new disk into driver A
pause
goto begin
在这个例子中,驱动器 A 中磁盘上的所有文件均复制到d:\back中。显示的注释提示您将另一张磁盘放入驱动器 A 时,pause 命令会使程序挂起,以便您更换磁盘,然后按任意键继续处理。
6.Call 命令
从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。call 命令接受用作调用目标的标签。如果在脚本或批处理文件外使用 Call,它将不会在命令行起作用。
语法
call [[Drive:][Path] FileName [BatchParameters]] [:label [arguments]]
参数
[Drive:}[Path] FileName
指定要调用的批处理程序的位置和名称。filename 参数必须具有 .bat 或 .cmd 扩展名。
7.start 命令
调用外部程序,所有的DOS命令和命令行程序都可以由start命令来调用。
入侵常用参数:
MIN 开始时窗口最小化
SEPARATE 在分开的空间内开始 16 位 Windows 程序
HIGH 在 HIGH 优先级类别开始应用程序
REALTIME 在 REALTIME 优先级类别开始应用程序
WAIT 启动应用程序并等候它结束
parameters 这些为传送到命令/程序的参数
执行的应用程序是 32-位 GUI 应用程序时,CMD.EXE 不等应用程序终止就返回命令提示。如果在命令脚本内执行,该新行为则不会发生。
8.choice 命令
choice 使用此命令可以让用户输入一个字符,从而运行不同的命令。使用时应该加/c:参数,c:后应写提示可输入的字符,之间无空格。它的返回码为1234……
如: choice /c:dme defrag,mem,end
将显示
defrag,mem,end[D,M,E]?
Sample:
Sample.bat的内容如下:
@echo off
choice /c:dme defrag,mem,end
if errorlevel 3 goto defrag (应先判断数值最高的错误码)
if errorlevel 2 goto mem
if errotlevel 1 goto end
:defrag
c:\dos\defrag
goto end
:mem
mem
goto end
:end
echo good bye
此文件运行后,将显示 defrag,mem,end[D,M,E]? 用户可选择d m e ,然后if语句将作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到end标号处,然后程序将显示good bye,文件结束。 你好。dos批处理

Ⅲ DOS命令求帮助

酱油党路过,这个不是一般的程序代码,真心不懂

Ⅳ 谁知道DOS的一些基本的命令啊写给我可以吗

文件名是由文件路径和文件名称合起来的,如C:\DOS\COMMAND.COM。

DIR 显示文件和文件夹(目录)。
用法:DIR [文件名] [选项]

它有很多选项,如/A表示显示所有
文件(即包括带隐含和系统属性的文件),/S表示也显示子文件夹中的文件,/P表示分屏显示,/B表示只显示文件名,等等。
如 DIR A*.EXE /A /P
此命令分屏显示当前文件夹下所有以A开头后缀为EXE的文件(夹)。

CD或CHDIR 改变当前文件夹。
用法:CD [文件夹名]
若无文件夹名则显示当前路径。

MD或MKDIR 建立文件夹。
用法:MD 文件夹名

RD或RMDIR 删除文件夹。
用法:RD 文件夹名
注意:此文件夹必须是空的。

DEL或ERASE 删除文件。
用法:DEL/ERASE 文件名

COPY 拷贝文件。
用法: COPY 文件名1 [文件名2] [选项]
如 COPY /B A+B C
此命令将两个二进制文件A和B合为一个文件C。

TYPE 显示文件内容。
用法:TYPE 文件名

REN或RENAME 改变文件名,在DOS7中还可以改变文件夹名。
用法:REN 文件(夹)名1 文件(夹)名2

EDIT 编辑文件,在DOS7中还可以编辑二进制文件。
用法:EDIT [文件名] [选项]
如 EDIT /70 C:\COMMAND.COM
此命令以二进制方式编辑C:\COMMAND.COM文件。

FORMAT 格式化磁盘。
用法:FORMAT 驱动器 [选项]

它的选项很多,如/Q是快速格式化,/U表示无条件格式化(即无法使用UNFORMAT等命令恢复),/V指定磁盘的卷标名,等等。它还有许多未公开参数。

MEM 显示内存状态。
用法:MEM [选项]

它的选项也有不少,如/C可列出所有程序的内存占用,/D是显示驻留内存的程序及设备驱动程序的状态等详细信息,/F显示空闲的内存总量,/M显示内存中的模块信息,/P则是分屏显示。还有隐藏的/A选项,可以显示HMA信息。

MOVE 移动文件或文件夹,还可以更改文件或文件夹的名称。
用法:MOVE 文件[夹]1 文件[夹]2
如 MOVE C:\*.EXE D:
此命令可以将C盘根文件夹下所有扩展名为EXE的文件移到D盘上。

XCOPY 复制文件或文件夹。
用法:XCOPY 文件[夹]名1 [文件[夹]名2] [选项]

它的选项非常多,如/S可拷贝整个文件夹(包括子文件夹)中的文件,/E指定包括空文件夹,/V表示复制完后检验复制出的文件的正确性,/Y表示确认,等等。

CLS 清除屏幕。
用法:CLS

SYS 传导系统,即将系统文件(如IO.SYS等)从一处传输到指定的驱动器中。
用法:SYS 文件夹名 [驱动器]
如 SYS C:\DOS A:
此命令即可将位于C:\DOS文件夹下的系统文件传输到A盘中。

DATE 显示或设置日期。
用法:DATE [日期]

TIME 显示或设置时间。
用法:TIME [时间]

DOS还自带一些其它的命令,如SORT(排序),FIND(寻找字符)等。

Ⅳ DOS的命令有哪些

**DOS命令大全
一)MD——建立子目录
1.功能:创建新的子目录
2.类型:内部命令
3.格式:MD[盘符:][路径名]〈子目录名〉
4.使用说明:
(1)“盘符”:指定要建立子目录的磁盘驱动器字母,若省略,则为当前驱动器;
(2)“路径名”:要建立的子目录的上级目录名,若缺省则建在当前目录下。
例:(1)在C盘的根目录下创建名为FOX的子目录;(2)在FOX子目录下再创建USER子目录。
C:、>MD FOX (在当前驱动器C盘下创建子目录FOX)
C:、>MD FOX 、USER (在FOX 子目录下再创建USER子目录)
(二)CD——改变当前目录
1.功能:显示当前目录
2.类型:内部命令
3.格式:CD[盘符:][路径名][子目录名]
4.使用说明:
(1)如果省略路径和子目录名则显示当前目录;
(2)如采用“CD、”格式,则退回到根目录;
(3)如采用“CD.。”格式则退回到上一级目录。
例:(1)进入到USER子目录;(2)从USER子目录退回到子目录;(3)返回到根目录。
C:、>CD FOX 、USER(进入FOX子目录下的USER子目录)
C:、FOX、USER>CD.。 (退回上一级根目录)
C:、FOX>CD、 (返回到根目录)
C:、>
(三)RD——删除子目录命令
1.功能:从指定的磁盘删除了目录。
2.类型:内部命令
3.格式:RD[盘符:][路径名][子目录名]
4.使用说明:
(1)子目录在删除前必须是空的,也就是说需要先进入该子目录,使用DEL(删除文件的命令)将其子目录下的文件删空,然后再退回到上一级目录,用RD命令删除该了目录本身;
(2)不能删除根目录和当前目录。
例:要求把C盘FOX子目录下的USER子目录删除,操作如下:
第一步:先将USER子目录下的文件删空;
C、>DEL C:、FOX、USER、*。*
第二步,删除USER子目录。
C、>RD C:、FOX、USER
(四)DIR——显示磁盘目录命令
1.功能:显示磁盘目录的内容。
2.类型:内部命令
3.格式:DIR [盘符][路径][/P][/W]
4.
使用说明:/P的使用;当欲查看的目录太多,无法在一屏显示完屏幕会一直往上卷,不容易看清,加上/P参数后,屏幕上会分面一次显示23行的文件信息,然后暂停,并提示;Press
any key to continue
/W的使用:加上/W只显示文件名,至于文件大小及建立的日期和时间则都省略。加上参数后,每行可以显示五个文件名。
PATH——路径设置命令
1.功能:设备可执行文件的搜索路径,只对文件有效。
2.类型:内部命令
3.格式:PATH[盘符1]目录[路径名1]{[;盘符2:],〈目录路径名2〉…}
4.使用说明:
(1)当运行一个可执行文件时,DOS会先在当前目录中搜索该文件,若找到则运行之;若找不到该文件,则根据PATH命令所设置的路径,顺序逐条地到目录中搜索该文件;
(2)PATH命令中的路径,若有两条以上,各路径之间以一个分号“;”隔开;
(3)PATH命令有三种使用方法:
PATH[盘符1:][路径1][盘符2:][路径2]…(设定可执行文件的搜索路径) PATH:(取消所有路径)
PATH:(显示目前所设的路径)
(六)TREE——显示磁盘目录结构命令
1.功能:显示指定驱动器上所有目录路径和这些目录下的所有文件名。
2.类型:外部命令
3.格式:TREE[盘符:][/F][》PRN]
4.使用说明:
(1)使用/F参数时显示所有目录及目录下的所有文件,省略时,只显示目录,不显示目录下的文件;
(2)选用>PRN参数时,则把所列目录及目录中的文件名打印输出。
(七)DELTREE——删除整个目录命令
1.功能:将整个目录及其下属子目录和文件删除。
2.类型:外部命令
3.格式:DELTREE[盘符:]〈路径名〉
4.使用说明:该命令可以一步就将目录及其下的所有文件、子目录、更下层的子目录一并删除,而且不管文件的属性为隐藏、系统或只读,只要该文件位于删除的目录之下,DELTREE都一视同仁,照删不误。使用时务必小心!!!
五、磁盘操作类命令
(一)formAT——磁盘格式化命令
1.功能:对磁盘进行格式化,划分磁道和扇区;同时检查出整个磁盘上有无带缺陷的磁道,对坏道加注标记;建立目录区和文件分配表,使磁盘作好接收DOS的准备。
2.类型:外部命令
3.格式:formAT〈盘符:〉[/S][/4][/Q]
4.使用说明:
(1)命令后的盘符不可缺省,若对硬盘进行格式化,则会如下列提示:WARNING:ALL DATA ON NON
——REMOVABLE DISK
DRIVE C:WILL BE LOST !
Proceed with format (Y/N)?
(警告:所有数据在C盘上,将会丢失,确实要继续格式化吗?)
(2)若是对软盘进行格式化,则会如下提示:Insert mew diskette for drive A;
and press ENTER when ready…
(在A驱中插入新盘,准备好后按回车键)。
(3)选用[/S]参数,将把DOS系统文件IO.SYS
、MSDOS.SYS及COMMAND.COM复制到磁盘上,使该磁盘可以做为DOS启动盘。若不选用/S参数,则格式化后的磙盘只能读写信息,而不能做为启动盘;
(4)选用[/4]参数,在1.2MB的高密度软驱中格式化360KB的低密度盘;
(5)选用[/Q]参数,快速格式化,这个参数并不会重新划分磁盘的磁道貌岸然和扇区,只能将磁盘根目录、文件分配表以及引导扇区清成空白,因此,格式化的速度较快。
(6)选用[/U]参数,表示无条件格式化,即破坏原来磁盘上所有数据。不加/U,则为安全格式化,这时先建立一个镜象文件保存原来的FAT表和根目录,必要时可用UNFORRMAT恢复原来的数据。
(二)UNformAT恢复格式化命令
1.功能:对进行过格式化误操作丢失数据的磁盘进行恢复。
2.类型:外部命令
3.格式:UNformAT〈盘符〉[/L][/U][/P][/TEST]
4.使用说明:用于将被“非破坏性”格式化的磁盘恢复。根目录下被删除的文件或子目录及磁盘的系统扇区(包括FAT、根目录、BOOT扇区及硬盘分区表)受损时,也可以用UNformAT来抢救。
(1)选用/L参数列出找到的子目录名称、文件名称、大孝日期等信息,但不会真的做formAT工作。
(2)选用/P参数将显示于屏幕的报告(包含/L参数所产生的信息)同时也送到打印机。运行时屏幕会显示:“Print out will
be sent to LPT1”
(3)选用/TEST参数只做模拟试验(TEST)不做真正的写入动作。使用此参数屏幕会显示:“Simulation only”
(4)选用/U参数不使用MIRROR映像文件的数据,直接根据磁盘现状进行UNformAT。
(5)选用/PSRTN;修复硬盘分区表。
若在盘符之后加上/P、/L、/TEST之一,都相当于使用了/U参数,UNformAT会“假设”此时磁盘没有MIRROR映像文件。
注意:UNformAT对于刚formAT的磁盘,可以完全恢复,但formAT后若做了其它数据的写入,则UNformAT就不能完整的救回数据了。UNformAT并非是万能的,由于使用UNformAT会重建FAT与根目录,所以它也具有较高的危险性,操作不当可能会扩大损失,如果仅误删了几个文件或子目录,只需要利用UNDELETE就够了。
三) CHKDSK——检查磁盘当前状态命令
1.功能:显示磁盘状态、内存状态和指定路径下指定文件的不连续数目。
2.类型:外部命令
3.格式:CHKDSK [盘符:][路径][文件名][/F][/V]
4.使用说明:
(1)选用[文件名]参数,则显示该文件占用磁盘的情况;
(2)选[/F]参数,纠正在指定磁盘上发现的逻辑错误;
(3)选用[/V]参数,显示盘上的所有文件和路径。
(四)DISKCOPY——整盘复制命令
1.功能:复制格式和内容完全相同的软盘。
2.类型:外部命令
3.格式:DISKCOPY[盘符1:][盘符2:]
4.使用说明:
(1)如果目标软盘没有格式化,则复制时系统自动选进行格式化。
(2)如果目标软盘上原有文件,则复制后将全部丢失。
(3)如果是单驱动器复制,系统会提示适时更换源盘和目标盘,请操作时注意分清源盘和目标盘。
(五)LABEL——建立磁盘卷标命令
1.功能:建立、更改、删除磁盘卷标。
2.类型:外部命令
3.格式:LABEL[盘符:][卷标名]
4.使用说明:
(1)卷标名为要建立的卷标名,若缺省此参数,则系统提示键入卷标名或询问是否删除原有的卷标名;
(2)卷标名由1至11个字符组成。
(六)VOL——显示磁盘卷标命令
1.功能:查看磁盘卷标号。
2.类型:内部命令
3.格式:VOL[盘符:]
4.使用说明:省略盘符,显示当前驱动器卷标。
(七)SCANDISK——检测、修复磁盘命令
1.功能:检测磁盘的FAT表、目录结构、文件系统等是否有问题,并可将检测出的问题加以修复。
2.类型:外部命令
3.格式:SCANDISK[盘符1:]{[盘符2:]…}[/ALL]
4.使用说明:
(1)CCANDISK适用于硬盘和软盘,可以一次指定多个磁盘或选用[/ALL]参数指定所有的磁盘;
(2)可自动检测出磁盘中所发生的交叉连接、丢失簇和目录结构等逻辑上的错误,并加以修复。
(八)DEFRAG——重整磁盘命令
1.。功能:整理磁盘,消除磁盘碎块。
2.类型:外部命令

相关教程:
http://www.softhouse.com.cn/html/200501/2005012608080500004109.html

Ⅵ 在dos中分区的命令是什么

如何在DOS下进行硬盘分区及格式化命令?

硬盘分区(Fdisk)
1 进入BIOS,将引导顺序设为“A: , C: , SCSI"
目的:能用WIN98启动软盘引导系统。

2 进入启动菜单。
选择启动方式。

Microsoft windows98 startup Menu 中方大意: 1) Start windows98 setup from CD-ROM. 1.从光驱直接安装win98 2) Start computer
with CD-ROM support 2.引导系统并加载光驱 3) Start computer without CD-ROM support 3. 引导系统并不加载光驱 Enter a chine 3
输入选择:

一,选择“3”引导进入系统
二,屏幕显示DOS提示盘符“A : \ >"键入“Fdisk" 命令

3,选择FAT标准

执行FDISK命令
Your computer has a .......... do not enable Carye drige support Do you mish to enable large disk appoint (Y\N)...[Y] 中文大意 如果硬盘容量大于
512mb时,将可以使用FAT32分区(突破2G限制)管理大硬盘。 警告:
如果使用FAT32模式建立分区,那么DOS 6.X和Win NT系统将无法读,写所建立的逻辑盘(FAT32模式)。 你将使FAT32模式分区吗(Y\N)? [Y] (回车同意使用, 输入“N”不用)

注:一般情况下应使用FAT32标准。如果不使用FAT32而使用FAT16文件标准(在执行FDISK命
令的上图中选择“N"),那么所建立的每个分区容量不能超过2G。

4.建立主分区
在确定模式后,我们进行分区
Microsoft Windows 98 Fixed Disk
Setup Program (C) Copyright Microsoft Corp. 1983--1998
FDISK Options 中文大意: Current
fixed disk drive : 1 当前处理能者对象为主硬盘(1)
Choose one of the following :
选择以下某一种操作: 1. Create DOS partition or Logical DOS Drive 1.建立分区或逻辑盘 2. Set active partition
2.激活分区 3. Delete partition or Logical DOS Drive
3.删除分区或逻辑盘
4. Display partition information 4.列出当前硬盘分区情况
Enter choice :[ 1 ] 输入选择:[1] WARNING! No partitions are set active ------ disk 1 is not star table unless a
partition is set active Press ESE to exit FDISK 按
"ESC"键退出FDISK

Create DOS partition or Logical DOS Drive Current fixed disk :1 当前处理对象为主硬盘 Choose one of the following : 选择以下某一种操作: 1.Create Primary DOS Partition 1.建立主分区
2.Create Extended DOS Petition
2.建立扩展分区 3.Create Logical DOS Drive(s) in the Extended DOS Partition 3.在扩展分区中建立逻辑盘 Enter choice: [1]
Press Esc to return to FDISK Options

Create Primary DOS Partition Current fixed disk drive
: 1 Do you wish to use the maximum available size for a Primary DOS Partition
and make The partition active (Y/N)......................?[N] (要将硬盘所有可
用容量都分配给基本DOS分区,并且设其为活动引导区吗?) Press Esc to return to FDISK Options

注意:此时程序提示用户是否将全部硬盘为主分区,如果选择“Y”后(如果此醒盘小于64G
),硬盘上就只能建有一个主分区了。 如果选择“N”,屏幕将显示出硬盘上所有可用空间


Create Primary DOS Partition Current
fixed disk drive :1 Total disk space is 8691 Mbytes (1 Mbytes = 1048576 bytes)
Maximum space available for partition is 8691 Mbytes (100%) 大意:当前硬盘(标称
9.1G)的全部空间为8691MB可建最大分区为8691(100%) 另注: 如果是FAT16模式则只
能为2048G Enter partition size in Mbytes or percent or percent of disk space (%
) to Create a Primary DOS Partition ............................................
...............: [4000] 大意: 为准备建立的分区确定容量 注: 只建一个主分区
时可直接回车, 不使用全部硬盘空间或还将建立扩展分区时在方括号中更改
数据. Press Esc to return to FDISK Options

由于我们需要建立主分区和扩展分区, 所以在图中的方括号中将8691改为4000,将主
分区建为4G,同时程序自动为主分区分配逻辑盘符“C:”然后屏幕将提示主分区已建立并显
示主分区容量和所占硬盘全部容量的比例,此后按“ESC”返回FDISK主菜单。此时将提示当
前还没有可引导的分区(WARNING!No partitions are set active ------ disk 1
is not star table unless a partition is set active 警告!当前没有
分区设为可引导区---- 除非设定好引导区, 否则硬盘不能启动 )

5.激活主分区

在硬盘上建立主分区后,在FDISK的主菜单上选择2(Active Partition ), 如果分区时没
有活动 DOS 分区,则在启动时C盘不能自动引导,即使C盘已经格式化。此时,屏幕显示如图

Set Active Partition Current fixed disk drive : 1
Partition Status Type Volume Label Mbytes System Usage C: 1 A PRI DOS MS-DOS_6 4000 FAT32 46%
Enter the number of the partition you want to make active ..........
.............[1] (输入要设置活动的分区号码) Press Esc to continue

由于当前只有一个分区,故选择1。分区状态(Status)从空白变为A状态,表示分区1为当前
可引导区(Active)。然后用ESC键退回FDISK的主菜单。

6.建立扩展分区

在主菜单中选择"1"(Create DOS partition or Logic DOS Drive).再选择“2”(Create Extended DOS Partition)建立扩展分区

Create Extended DOS Partition Current fixed disk drive:
1 Partition Status Type Volume Label Mbytes System
Usage C: 1 A PRI DOS 4000 UNKNOWN 46%
Total disk space is 8691 Mbytes (1 Mbytes = 1048576 bytes) Maximum space available for partition is 4691 Mbytes (53%) ( 磁盘衷情容量是 8691MB,可用空间是4691MB ) Enter partition size in Mbytes or percent of disk space (%) to Create an Extended DOS Partition…………………………………………: [4691]
(以MB为单位或者以可用容量的百分比输入,以创建篇DOS分区) Press Esc to continue

如果不需要为其它操作系统预留分区,那么建议使用系统给出的全部硬盘空间,此时可以直
接回车建立扩展分区。划分成切后,展幕显示如下图:

Create Extended DOS Partition Current fixed disk drive: 1 Partition Status Type Volume Label Mbytes System Usage C: 1 A PRI DOS 4000 UNKNOWN
46% 2 EXT DOS 4691 UNKNOWN 53% Extended Dos Partition created (扩展分区已创建成) Press Esc to continue

按ESC键退出“CREATE Extended DOS Partition "菜单,FDISK自动进入Create logical
Dos Drive(s)in the Extended DOS Partition ( 在扩展DOS分区上建立逻辑驱动器)菜
单。
7.设置逻辑盘数据和容量

Create Logical DOS Drive(s) in Extended DOS Partition No logical drives defined (没有逻辑驱动器的定义) Total Extended DOS Partition size is 8691 Mbytes (
1 Mbytes =1048576 bytes) Maximum space available for logical drive is 4691 Mbytes (53%) (扩展分区空间共有8691MB,可用于建立逻辑盘的空间为4691MB(53%) Enter logical drive size in Mbytes or percent of disk space (%)...........[4691] (
输入准备建立的逻辑盘容量......) (在此输入4691建立第1块逻辑盘) Press Esc to continue

用户可以根据硬盘容量和自己的需要来设定逻辑盘数量和各逻辑盘容量。如果我们将扩展分
区设成2块逻辑盘,我们需要先确定D:盘的容量如2691MB,建立D:盘后,再将其余(2000MB)全部设成E:盘,此时屏幕将会显示用户所建立的逻辑盘数量和容量,然后返回FDISK主菜
单。

8.退出FDISK 程序
逻辑驱动器创建完毕后,屏幕显示

Create Logical DOS Drive(s) in the Extended DOS Partition Dry Volume Label Mbytes System Usage D:
2691 UNKNOWN 31% E: 2000 UNKNOWN
23% All available space in the Extended DOS Partition Is assigned to logical drives. (所有可用的扩展DOS分区容量已分配给逻辑驱动器) Press Esc to continue

逻辑驱动器已经建立,完成了整个硬盘分区工作。

注意:一定要用ESC键退出FDISK程序!否则,程序没有真正将分区信息表存入硬盘中。
按“ESC”键盘退出至屏幕提示用户必须重新启动系统,然后才能继续对所建立的所有
逻辑盘进行格式化。

附:原本已分区的硬盘,可先用FDISK的主菜单的Display partition information(列出当
前硬盘分区情况)来查看分区情况

Ⅶ perl中的defined用来判断某个变量是否为空求解defined有什么用

我觉得这些回答都不准确
这个《perl入门》里面的例子是有问题的,首先你看这一版本来就有一个错误。
defined是perl的函数,所以显然不应该有“$”不然就成了变量了~
然后我们再说这个例子,这个例子根本不可会输出“No input available!/n”因为系统会自动把你按的回车转成识别成字符串的内容。
所以这个例子应该改成
#!/usr/bin/perl
chomp($a = <STDIN>);
if(defined($a)){
print "The input was $a";
}else{
print "No input available!\n";
}
用chomp命令把最后一个\n砍掉,这样,你如果什么都不输入,直接回车,你键入的才是一个undef,这样defined函数才有效果,如果这个程序如上,有defined,那么他的输出会是

The input was (后面会直接接你当前的目录,因为没有回车不会让你的目录换行)

如果你把程序的defined函数删除
#!/usr/bin/perl
chomp($a = <STDIN>);
if($madonna){
print "The input was $a";
}else{
print "No input available!\n";
}
如上,这样你运行以后,直接按回车,你的输出会是

No input available!
因为你最后打的回车被chomp砍掉了,所以$a变量就没有被赋值,也就成了undef,而你又删除了defined函数,也就是这个$a依然是undef,所以,这时候判断条件才是false,才会输出else的内容~本人亲测,名誉做保~哇卡卡~想起了作者的一句话,这本书的质量在于译者~希望对大家有帮助~

Ⅷ dos if 条件判断

1、判断驱动器、文件或文件夹是否存在,用
if
exist
语句;
2、判断某两个字符串是否相等,用
if
"字符串1"=="字符串2"
语句;
3、判断某两个数值是否相等,用
if
数值1
equ
数值2
语句;
4、判断某个变量是否已经被赋值,用
if
defined
str
语句;
if语句的完整格式是这样的:if
条件表达式
(语句1)
else
(语句2),它的含义是:如果条件表达式成立,那么,就执行语句1,否则,将执行语句2。
对于以上四种情形,可以分别使用如下代码:
1、if
exist
d:\test.txt
(echo
D盘下有test.txt存在)
else
(echo
D盘下不存在test.txt)
2、if
"abc"=="xyz"
(echo
字符串abc等于字符串xyz)
else
(echo
字符串abc不等于字符串xyz)
3、if
1
equ
2
(echo
1等于2)
else
(echo
1不等于2)
4、if
defined
str
(echo
变量str已经被赋值,其值为%str%)
else
(echo
变量str的值为空)
判断字符串是否相等的时候,if会区分大小写,比如,单纯的if语句会认为字符串abc和字符串Abc不相同,若不想区分大小写,则需要添加
/i
开关,使用
if
/i
"字符串1"=="字符串2"
的格式;另外,等于符号是连续的"=="而非单独的"="。
判断两个数值之间的大小关系,除了等于用equ之外,还有其他的关系符号,所有适用于if语句的关系符号见下表:
中文含义 关系符 英文解释
等于 equ equal
大于 gtr greater
than
大于或等于 geq greater
than
or
equal
小于 lss less
than
小于或等于 leq less
than
or
equal
不等于 neq no
equal
if语句还有一个精简格式:if
条件表达式
语句,它的含义是:如果条件表达式成立,将执行语句,否则,什么也不做。

Ⅸ DOS命令的if语句

以下代码是使用 if /? >> C:\help.txt 生成的。
-----------
执行批处理程序中的条件处理。

IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command

NOT 指定只有条件为 false 的情况下, Windows XP 才
应该执行该命令。

ERRORLEVEL number 如果最后运行的程序返回一个等于或大于
指定数字的退出编码,指定条件为 true。

string1==string2 如果指定的文字字符串匹配,指定条件为 true。

EXIST filename 如果指定的文件名存在,指定条件为 true。

command 如果符合条件,指定要执行的命令。如果指定的
条件为 FALSE,命令后可跟一个执行 ELSE
关键字后的命令的 ELSE 命令。

ELSE 子句必须在 IF 之后出现在同一行上。例如:

IF EXIST filename. (
del filename.
) ELSE (
echo filename. missing.
)

因为 del 命令需要用一个新行终止,以下子句不会有效:

IF EXIST filename. del filename. ELSE echo filename. missing

由于 ELSE 命令必须与 IF 命令的尾端在同一行上,以下子句也
不会有效:

IF EXIST filename. del filename.
ELSE echo filename. missing

如果都放在同一行上,以下子句有效:

IF EXIST filename. (del filename.) ELSE echo filename. missing

如果命令扩展名被启用,IF 会如下改变:

IF [/I] string1 compare-op string2 command
IF CMDEXTVERSION number command
IF DEFINED variable command

其中,比较运算符可以是:

EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于

及 /I 开关;如果该开关被指定,则说明要进行的字符串比较不分
大小写。/I 开关可以用于 IF 的 string1==string2 的形式上。这些
比较都是通用的;原因是,如果 string1 和 string2 都是由数字
组成的,字符串会被转换成数字,进行数字比较。

CMDEXTVERSION 条件的作用跟 ERRORLEVEL 的一样,除了它
是在跟与命令扩展名有关联的内部版本号比较。第一个版本
是 1。每次对命令扩展名有相当大的增强时,版本号会增加一个。
命令扩展名被停用时,CMDEXTVERSION 条件不是真的。

如果已定义环境变量,DEFINED 条件的作用跟 EXISTS 的一样,
除了它取得一个环境变量,返回的结果是 true。

如果没有名为 ERRORLEVEL 的环境变量,%ERRORLEVEL%
会扩充为 ERROLEVEL 当前数值的字符串表达式;否则,您会得到
其数值。运行程序后,以下语句说明 ERRORLEVEL 的用法:

goto answer%ERRORLEVEL%
:answer0
echo Program had return code 0
:answer1
echo Program had return code 1

您也可以使用以上的数字比较:

IF %ERRORLEVEL% LEQ 1 goto okay

如果没有名为 CMDCMDLINE 的环境变量,%CMDCMDLINE%
将在 CMD.EXE 进行任何处理前扩充为传递给 CMD.EXE 的原始
命令行;否则,您会得到其数值。

如果没有名为 CMDEXTVERSION 的环境变量,
%CMDEXTVERSION% 会扩充为 CMDEXTVERSION 当前数值的
字串符表达式;否则,您会得到其数值。
---------------
代码结束。
针对楼主问题说明:
你说的不可能实现。因为DOS不可能提供给你判断正在运行的Dos命令的方法。如果一定要完成这样的功能,也只能做一个程序,自己来检测。

Ⅹ DOS命令的具体内容

这个不是DOS,是bios设置,主板说明书一般带的有说明的

阅读全文

与dos命令defined用法相关的资料

热点内容
编译检查的是什么错误 浏览:404
加密兔f码生成器免费 浏览:291
思科路由器命令明文加密 浏览:171
方舟生存进化服务器如何改名字 浏览:892
央行数字货币app怎么注册 浏览:431
51单片机显示时间 浏览:770
我的世界网易版怎么压缩地图 浏览:682
qq小程序云服务器和 浏览:740
方舟服务器怎么玩才好玩 浏览:557
单片机的部件 浏览:621
编译原理遍的过程 浏览:252
python读取json字符串 浏览:62
ubuntu1404安装php 浏览:634
lua能编译吗 浏览:118
思仙怎么看服务器 浏览:660
php微信图片防盗链 浏览:800
安卓1怎么读音 浏览:297
农业app怎么开通快捷支付 浏览:912
pythonredisdict 浏览:389
如何攻击别人网赌服务器 浏览:882