批处理Copy命令大全
- 格式:doc
- 大小:31.00 KB
- 文档页数:8
批处理--Copy命令大全1.Echo 命令打开回显或关闭请求回显功能,或显示消息。
如果没有任何参数,echo 命令将显示当前回显设置。
[p:1]语法echo [{on|off}] [message]Sample:[Copy to clipboard] [ - ]CODE:echo off / echo hello world在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。
2.@ 命令表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
Sample:[Copy to clipboard] [ - ]CODE:@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:[Copy to clipboard] [ - ]CODE:if {%1}=={} goto noparmsif {%2}=={} goto noparms(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。
)@Rem check parameters if null show usage:noparmsecho Usage: monitor.bat ServerIP PortNumbergoto end标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是标签,goto命令就是根据这个:来寻找下一步跳到到那里。
windows操作系统中编辑文件的命令Windows操作系统中提供了多种命令用于编辑文件,可以通过这些命令来快速、方便地对文件进行编辑操作。
下面将详细介绍几个常用的编辑文件命令。
1. copy命令copy命令可以用来复制文件,语法如下:copy [源文件路径] [目标文件路径]可以利用copy命令将一个文件复制到另一个位置,例如:copy C:\文件夹1\文件1.txt D:\文件夹2\文件1.txt这样就可以将C盘文件夹1中的文件1.txt复制到D盘文件夹2中。
2. del命令del命令用于删除文件,语法如下:del [文件路径]可以使用del命令删除指定路径的文件,例如:del C:\文件夹\文件.txt这样就可以删除C盘文件夹中的文件.txt。
3. ren命令ren命令用于修改文件名,语法如下:ren [旧文件名] [新文件名]可以使用ren命令将文件名修改为新的名称,例如:ren C:\文件夹\旧文件名.txt 新文件名.txt这样就可以将C盘文件夹中的旧文件名.txt改为新文件名.txt。
4. edit命令edit命令是Windows操作系统中的一个文本编辑器,可以通过它来编辑文件内容。
使用edit命令打开文件后,可以进行插入、删除、替换等编辑操作,例如:edit C:\文件夹\文件.txt通过edit编辑器打开C盘文件夹中的文件.txt后,可以对其进行编辑。
除了以上介绍的几个编辑文件的命令之外,Windows操作系统还提供了其他一些命令,如move命令用于移动文件、type命令用于查看文件内容等。
根据不同的需求,可以选择适合的命令来进行文件编辑操作。
综上所述,Windows操作系统中提供了多种命令用于编辑文件,包括copy、del、ren和edit等命令。
通过这些命令,可以实现文件的复制、删除、重命名和编辑等功能,方便用户对文件进行操作和管理。
如何批处理拷贝文件和文件夹经常做数据备份的人很清楚,如果是少量数据或文件,简单复制即可,可是要是大量数据的话,再用这种方法,则费力费时,那么如何批处理拷贝文件和文件夹,可以用xcopy实现,例如:C:\>xcopy C:\ppt\*.* D:\ppt\ /s /e这条命令的意思就是把C盘下的PPT文件夹全部拷贝到D盘XCOPY 还有众多的功能,是加参数来完成的。
上面的/s /e 参数的作用分别是把子目录和空目录都复制过去,一些使用举例和参数说明如下:1、如只是单纯地复制E:\ 盘上所有文件到D:\ 盘上,就输入“ xcopy e:\*.* d: /s /h "就行啦!如果在复制过程中,你不要他复制文件啦!那就按键盘热键“Ctrl " +"Pause /break" 二个热键来中断复制。
2、如果想把E:\ 盘上所有文件复制到D:\盘上,分为今天复制一点,明天再接着复制一些,后天再接着复制一些。
或者是某种原因上次没有复制完成,今天想接着复制。
(这种情况是经常在复制文件中出现的)那可怎么办才好呢?那就输入“ xcopy e:\*.* d: /s /h /d /y ”就行啦。
他能查出那些文件是已经复制过去啦,那些文件还没有复制过去的。
3、当然我们也会碰到这种情况,一些文件我们已经修改过啦!网上面又有最新版本的啦。
原来备份的那份文件我们要及时更新啦。
那怎么才能同步更新呢?当然我们可以把最新的好份文件复制过去,这也是一种解决办法。
如果修改的文件有很多的,自己到时候也记不清楚那份文件是更新过的。
这么多的原来备份的那份文件都要更新,都要复制过去,可不是件省力气的活,而且容易出错和一些文件被忘记啦!那和上面一样也同样输入" xcopy e:\*.* d: /s /h /d /y "就行啦!4、还有一种情况我们经常也碰到的,因为复制某个文件出错或者这个文件在使用中,而停止了复制工作,(比如,复制C 盘上的windows xp )我们这时候想跳过某个出错的文件和某个正在使用中文件而继续复制其他文件。
COPY详细⽤法⼤全COPY详细⽤法⼤全COPY⽂件复制命令1.功能:拷贝⼀个或多个⽂件到指定盘上。
2.类型:内部命令3.格式:COPY [源盘][路径]〈源⽂件名〉[⽬标盘][路径][⽬标⽂件名]4.使⽤说明:(1)COPY是⽂件对⽂件的⽅式复制数据,复制前⽬标盘必须已经格式化;(2)复制过程中,⽬标盘上相同⽂件名称的旧⽂件会被源⽂件取代;(3)复制⽂件时,必须先确定⽬标般有⾜够的空间,否则会出现;insufficient的错误信息,提⽰磁盘空间不够;(4)⽂件名中允许使⽤通配举“*”“?”,可同时复制多个⽂件;(5)COPY命令中源⽂件名必须指出,不可以省略。
(6)复制时,⽬标⽂件名可以与源⽂件名相同,称作“同名拷贝”此时⽬标⽂件名可以省略;(7)复制时,⽬标⽂件名也可以与源⽂件名不相同,称作“异名拷贝”,此时,⽬标⽂件名不能省略;(8)复制时,还可以将⼏个⽂件合并为⼀个⽂件,称为“合并拷贝”,格式如下:COPY;[源盘][路径]〈源⽂件名1〉〈源⽂件名2〉…[⽬标盘][路径]〈⽬标⽂件名〉;(9)利⽤COPY命令,还可以从键盘上输⼊数据建⽴⽂件,格式如下:COPY CON [盘符:][路径]〈⽂件名〉;(10)注意:COPY命令的使⽤格式,源⽂件名与⽬标⽂件名之间必须有空格!COPY命令的⽤法1.这个是操作系统提供的帮助,都说这是个简单的命令E:\>copy /?将⼀份或多份⽂件复制到另⼀个位置。
COPY [/V] [/N] [/Y | /-Y] [/Z] [/A | /B ] source [/A | /B][+ source [/A | /B] [+ ...]] [destination [/A | /B]]source 指定要复制的⽂件。
/A 表⽰⼀个 ASCII ⽂本⽂件。
/B 表⽰⼀个⼆进位⽂件。
destination 为新⽂件指定⽬录和/或⽂件名称。
/V 验证新⽂件写得正确。
批处理中Copy与Xcopy命令的区别⼩结Copy与Xcopy的区别说明,这⾥C:为根⽬录,bat为⼦⽬录),⽽xcopy能,不过会出现提⽰,当然可以加参数⽽不使它提⽰。
复制代码代码如下:C:\>copy c:\bat\hai.bat d:\bat\hello.bat提⽰:系统找不到指定的路径。
已复制 0 个⽂件。
可以这样:复制代码代码如下:C:\>copy c:\hai.bat d:\hell.bat已复制 1 个⽂件C:\>xcopy c:\bat\hai.bat d:\bat\hello.bat⽬标 D:\bat\hello.bat 是⽂件名还是⽬录名(F = ⽂件,D = ⽬录)? fC:\bat\hai.bat复制了 1 个⽂件将⽂件1.txt和2.txt合并为3.txt复制代码代码如下:copy /b c:\1.txt+2.txt c:\3.txt命令格式:copy /b ⽂件1+⽂件2+......⽂件N 合并后的⽂件名命令讲解:使⽤“+”将多个相同或不同格式的⽂件合并为⼀个⽂件。
⼩提⽰:1,在尾部隐藏了⽂本数据的图⽚⽂件,在使⽤了其他⽂件编辑器并保存后,隐藏的⽂本数据有可能丢失。
2,MP3⽂件在使⽤此⽅法连接后,就可以实现连续播放。
3,合成图⽚/歌曲这样的⼆进制⽂件必须使⽤/b参数(b代表Binaty,⼆进制),否则将会失败;另⼀个合并参数是/a(ASCII,⽂本⽂件),只能⽤于纯⽂本的合并。
两参数不能同时使⽤,⼆进制⽅式可以合并⽂本⽂件和⼆进制⽂件,⽽⽂本⽅式⽤于纯⽂本的合并。
命令解释:将C盘bat⽬录下所有⽂件复制到D盘hello⽬录下。
你如果要选择指定定类型的⽂件(如txt⽂件)到D:\hello下的,则可以⽤:复制代码代码如下:C:\>copy c:\bat\hai\*.txt d:\hello说明:不会复制⼦⽬录下的⽂件及⽂件夹。
D盘hello⽬录必须存在复制代码代码如下:C:\>xcopy c:\bat\hai d:\hello /e/h命令解释:将C盘bat⽂件夹拷进D盘hello⽂件夹,包括所有⼦⽬录及具有隐藏和系统⽂件属性的⽂件。
浅论批处理COPY命令的用法浅论批处理COPY命令的用法在这里发出原址我也不打算发了,感觉上没什么意义,毕竟是天下文章一大炒么!(刚才我就转到自已的空间去了)。
在论谈里搜索时也未发现过同类文章(仅是搜索COPY),说实话COPY也是我接触比较早的一个命令,但是仅仅会简单的用法而以。
因为其用处并不是很大,大的工程XCOPY解决,小的手动就OK了。
不过它还是有存在的意义的。
1.DOS时代,Copy命令恐怕是最受欢迎也最常用一个DOS内部命令,但在Windows横行的今天,它渐渐被用户遗忘,似乎变得可有可无。
其实这个命2.令远远不止“拷贝”这么简单,好好利用它,会收到意想不到的效果。
3.用Copy实现远程上传和下载4.用Copy命令拷贝文件大家肯定都知道,但你知道吗?Copy还支持远程文件的拷贝!比如Copy C:\SRV.EXE \\210.***.***.***\ADMIN$可以5.把程序SRV.EXE“上传”到对方的ADMIN$共享目录下,当然反过来也可以,这样就成“下载”了:Copy \\210.***.***.***\ADMIN$\SRV.EXE C:\6.就能把对方的ADMIN$共享目录下的SRV.EXE文件下载到本地的C盘中。
7.用Copy将秘密藏在别人肚子里8.9.DOS的Copy命令可以将几个同类型的文件合并成一个文件,比如:多个.txt文件,其实通过它还能将一个文本文件合并到一个非文本文10.件中,实现隐藏秘密的效果。
比如你在D盘根目录有一个重要的文本文件:001.txt,想对其进行隐藏。
11.找一个MP3歌曲,体积最好不要太大(500KB左右为宜),比如:wanfei.mp3(假设也放在D盘根目录),输入:Copy wanfei.mp3/b + 001.txt/a12.wanfei-1.mp3,这样会生成一个新文件wanfei-1.mp3。
用Winamp打开它,歌曲没有变化。
13.按住Shift键右击wanfei-1.mp3,选择“打开方式”并选择EmEditor之类的文本编辑器打开该文件,看到什么了?一堆乱码?但如果按下14.Ctrl+End组合键将光标移至文件的尾部,是不是001.txt文件中的内容?15.16.小提示:其中参数/b指定以二进制格式复制、合并文件;参数/a指定以ASCII格式复制、合并文件。
批处理bat复制命令Copy与Xcopy未整理,来源⽹络稍后整理,COPY命令只能复制⽂件,不能复制⽂件夹。
copy /y c:\123.txt d:\/Y 取消提⽰以确认要覆盖1,单个⽂件的复制例1,把123.txt复制到d:\⽬录下。
如果此操作成功,命令⾏窗⼝中会提⽰“已复制1个⽂件”。
copy c:\123.txt d:\例2,把123.txt复制到d:\⽬录下,并把它修改为abc.bat,这⾥修改了⽂件名和它的格式。
copy c:\123.txt d:\abc.bat例3,把当前⽬录下的123⼦⽬录中的⽂件全部拷到当前⽬录。
copy .\1232,批量复制⽂件例1,将c:\123⽬录中所有⽂件复制到d:\abc⽬录中。
copy c:\123 d:\abc例2,将c:\123⽬录中所有rm格式的⽂件复制到d:\abc⽬录中,当⽬标⽬录中已经存在了和源⽬录中即将复制的⽂件相同⽂件名的⽂件时,就会出现如“改写x:\xx吗?(Yes/No/All):”这样的提⽰,让你选择是覆盖、不覆盖还是全部覆盖,通过参数/y(复制单个⽂件或批量复制时皆可使⽤),可以实现重名⽂件⽆须确认直接覆盖。
copy c:\123\*.rm d:\abc /y3,合并⽂件例1,把1.mp3和2.mp3合并成3.mp3。
copy /b d:\1.mp3 d:\2.mp3 e:\3.mp3例2,把1.txt和2.mp3合并,这⾥没有指定合成后的⽂件名哦,缺省情况下,合并后的⽂件名是命令中的第⼀个⽂件的名。
在这⾥,即把2.mp3合并进了1.txt。
copy /b d:\1.txt d:\2.mp3copy命令copy c:/test.txt d:/ 复制 c:/test.txt ⽂件到 d:/copy c:/test.txt d:/test.bak复制 c:/test.txt ⽂件到 d:/ ,并重命名为 test.bakcopy c:/*.*复制 c:/ 所有⽂件到当前⽬录,不包括隐藏⽂件和系统⽂件不指定⽬标路径,则默认⽬标路径为当前⽬录copy test.txt +复制⽂件到⾃⼰,实际上是修改了⽂件⽇期xcopy (外部命令)⽂件拷贝xcopy d:/123 e:/123 /s/e/i/y复制 d:/123 ⽂件夹、所有⼦⽂件夹和⽂件到 e:/,覆盖已有⽂件加 /i 表⽰如果 e:/ 没有 123⽂件夹就⾃动新建⼀个,否则会有询问常⽤参数/S 复制⽬录和⼦⽬录,不包括空⽬录。
注:如果对某一命令还不是很熟悉,可以在命令行窗口下输入:命令名/?的方式来获得帮助。
1 echo 和 @回显控制命令@ #关闭单行回显echo off #从下一行开始关闭回显@echo off #从本行开始关闭回显。
一般批处理第一行都是这个echo on #从下一行开始打开回显echo #显示当前是 echo off 状态还是 echo on 状态echo. #输出一个"回车换行",一般就是指空白行echo hello world #输出hello world"关闭回显"是指运行批处理文件时,不显示文件里的每条命令,只显示运行结果批处理开始和结束时,系统都会自动打开回显2 errorlevel程序返回码echo %errorlevel%每个命令运行结束,可以用这个命令行格式查看返回码用于判断刚才的命令是否执行成功默认值为0,一般命令执行出错会设 errorlevel 为13 dir显示目录中的文件和子目录列表dir #显示当前目录中的文件和子目录dir /a #显示当前目录中的文件和子目录,包括隐藏文件和系统文件dir c: /a:d #显示 C 盘当前目录中的目录dir c:\ /a:-d #显示 C 盘根目录中的文件dir d:\mp3 /b/p #逐屏显示 d:\mp3 目录里的文件,只显示文件名,不显示时间和大小dir *.exe /s显示当前目录和子目录里所有的.exe文件其中 * 是通配符,代表所有的文件名,还一个通配符 ? 代表一个任意字母或汉字如 c*.* 代表以 c 开头的所有文件?.exe 代表所有文件名是一个字母的.exe文件如果指定的目录或文件不存在,将返回 errorlevel 为1;每个文件夹的 dir 输出都会有2个子目录 . 和 ... 代表当前目录.. 代表当前目录的上级目录dir . #显示当前目录中的文件和子目录dir .. #显示当前目录的上级目录中的文件和子目录其它参数可参考 dir /?4 cd更改当前目录cd mp3 #进入当前目录中的mp3 目录cd .. #进入当前目录中的上级目录cd\ #进入根目录cd #显示当前目录cd /d d:\mp3 #可以同时更改盘符和目录cd "Documents and Settings"\All users文件名带空格,路径前需要加上引号!!如果更改到的目录不存在,则出错返回 errorlevel=15 md创建目录md abc #在当前目录里建立子目录 abcmd d:\a\b\c #如果 d:\a 不存在,将会自动创建6 rd删除目录rd abc #删除当前目录里的 abc 子目录,要求为空目录rd /s/q d:\temp #删除 d:\temp 文件夹及其子文件夹和文件,不需要按 Y 确认7 del删除文件del d:\test.txt #删除指定文件,不能是隐藏、系统、只读文件del *.*删除当前目录里的所有文件,不包括隐藏、系统、只读文件,要求按 Y 确认del /q/a/f d:\temp\*.*删除 d:\temp 文件夹里面的所有文件,包括隐藏、只读、系统文件,不包括子目录del /q/a/f/s d:\temp\*.*删除 d:\temp 及子文件夹里面的所有文件,包括隐藏、只读、系统文件,不包括子目录8 ren文件重命名ren 1.txt 2.bak #把 1.txt 更名为 2.bakren *.txt *.ini #把当前目录里所有.txt文件改成.ini 文件ren d:\temp tmp #支持对文件夹的重命名9 cls清屏10 type显示文件内容type c:\boot.ini #显示指定文件的内容,程序文件一般会显示乱码type *.txt #显示当前目录里所有.txt文件的内容11 copy拷贝文件copy c:\test.txt d:\复制 c:\test.txt 文件到 d:\ copy c:\test.txt d:\test.bak复制 c:\test.txt 文件到 d:\ ,并重命名为 test.bakcopy c:\*.*复制 c:\ 所有文件到当前目录,不包括隐藏文件和系统文件不指定目标路径,则默认目标路径为当前目录copy con test.txt从屏幕上等待输入,按 Ctrl+Z 结束输入,输入内容存为test.txt文件con代表屏幕,prn 代表打印机,nul代表空设备copy 1.txt + 2.txt 3.txt合并 1.txt 和 2.txt 的内容,保存为 3.txt 文件如果不指定 3.txt ,则保存到1.txtcopy test.txt +复制文件到自己,实际上是修改了文件日期12 title设置cmd窗口的标题title 新标题#可以看到cmd窗口的标题栏变了13 ver显示系统版本14 label 和 vol设置卷标vol #显示卷标label #显示卷标,同时提示输入新卷标label c:system #设置C盘的卷标为 system15 pause暂停命令运行该命令时,将显示下面的消息:请按任意键继续 . . .1一般用于看清楚屏幕上显示的内容16 rem 和 ::注释命令注释行不执行操作17 date 和 time日期和时间date #显示当前日期,并提示输入新日期,按"回车"略过输入date/t #只显示当前日期,不提示输入新日期time #显示当前时间,并提示输入新时间,按"回车"略过输入time/t #只显示当前时间,不提示输入新时间18 goto 和 :跳转命令:label #行首为:表示该行是标签行,标签行不执行操作goto label #跳转到指定的标签那一行19 find (外部命令)查找命令find "abc" c:\test.txt在 c:\test.txt 文件里查找含abc 字符串的行如果找不到,将设 errorlevel 返回码为1find /i "abc" c:\test.txt查找含 abc 的行,忽略大小写find /c "abc" c:\test.txt显示含 abc 的行的行数20 more (外部命令)逐屏显示more c:\test.txt#逐屏显示 c:\test.txt 的文件内容21 tree显示目录结构tree d:\ #显示D盘的文件目录结构22 &顺序执行多条命令,而不管命令是否执行成功c: & cd\ & dir /w相当于把下面3行命令写到1行去了c:cd\dir /w23 &&顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令f: && cd\ && dir >c:\test.txt注意如果f盘不存在,那么后面2条命令将不会执行find "ok" c:\test.txt && echo 成功如果找到了"ok"字样,就显示"成功",找不到就不显示24 ||顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令find "ok" c:\test.txt || echo 不成功如果找不到"ok"字样,就显示"不成功",找到了就不显示25 |管道命令前一个命令的执行结果输出到后一个命令dir *.* /s/a | find /c ".exe"管道命令表示先执行 dir 命令,对其输出的结果执行后面的 find 命令该命令行结果:输出当前文件夹及所有子文件夹里的.exe文件的个数type c:\test.txt|more这个和 more c:\test.txt 的效果是一样的26 > 和 >>输出重定向命令> 清除文件中原有的内容后再写入>> 追加内容到文件末尾,而不会清除原有的内容主要将本来显示在屏幕上的内容输出到指定文件中指定文件如果不存在,则自动生成该文件echo hello world>c:\test.txt生成c:\test.txt文件,内容为hello world这个格式在批处理文件里用得很多,可以生成.reg .bat .vbs 等临时文件type c:\test.txt >prn屏幕上不显示文件内容,转向输出到打印机echo hello world>con在屏幕上显示hello world,实际上所有输出都是默认 >con 的copy c:\test.txt f: >nul拷贝文件,并且不显示"文件复制成功"的提示信息,但如果f盘不存在,还是会显示出错信息copy c:\test.txt f: >nul 2>nul不显示"文件复制成功"的提示信息,并且f盘不存在的话,也不显示错误提示信息echo ^^W ^> ^W>c:\test.txt生成的文件内容为 ^W > W^ 和 > 是控制命令,要把它们输出到文件,必须在前面加个 ^符号27 <从文件中获得输入信息,而不是从屏幕上一般用于 date time label 等需要等待输入的命令@echo offecho 2005-05-01>temp.txtdate <temp.txtdel temp.txt这样就可以不等待输入直接修改当前日期28 %0 %1 %2 %3 %4 %5 %6 %7 %8 %9 %*命令行传递给批处理的参数%0 批处理文件本身%1 第一个参数%9 第九个参数%* 从第一个参数开始的所有参数在C盘根目录新建test.bat,内容如下:@echo offecho %0echo %1echo %2echo %*运行cmd,输入 c:\test.bat "/a" /b /c /d可以看出每个参数的含意修改test.bat内容如下@echooffecho %1echo %~1echo %0echo %~f0echo %~d0echo % ~p0echo %~n0echo %~x0echo %~s0echo %~a0echo %~t0echo %~z0再运行cmd,输入 c:\test.bat "/a" /b /c /d可以参照call/? 或 for/? 看出每个参数的含意注意这里可以对文件进行日期比较和大小比较echo load "%%1" "%%2">c:\test.txt生成的文件内容为load "%1" "%2"批处理文件里,用这个格式把命令行参数输出到文件31 set设置变量引用变量可在变量名前后加 % ,即 %变量名%set #显示目前所有可用的变量,包括系统变量和自定义的变量2echo %SystemDrive% #显示系统盘盘符。
window命令copy的用法Copy命令是Windows操作系统中的一个命令行工具,用于将文件或目录从一个位置复制到另一个位置。
它可以在命令提示符下使用,也可以在批处理文件或脚本中使用。
Copy命令非常实用,在日常工作中经常用来备份、移动或复制文件。
Copy命令的基本语法如下:copy [源文件路径] [目标文件路径]下面是Copy命令的主要用法和参数:1.复制文件:使用Copy命令复制单个文件的语法如下:copy [源文件路径] [目标文件路径]例如,将C盘下的test.txt文件复制到D盘,命令如下:copy C:\test.txt D:\如果目标路径没有指定文件名,则会将源文件复制到目标路径并保持相同的文件名。
2.复制多个文件:使用Copy命令复制多个文件的语法如下:copy [源文件路径1] [源文件路径2] ... [目标文件夹路径]例如,将C盘下的test1.txt、test2.txt和test3.txt文件复制到D盘的backup文件夹中,命令如下:copy C:\test1.txt C:\test2.txt C:\test3.txt D:\backup\在命令中指定多个源文件路径,然后在最后指定目标文件夹路径。
3.复制目录:使用Copy命令复制整个目录及其内容的语法如下:copy [源目录路径] [目标目录路径] /s例如,将C盘下的dir1目录复制到D盘的backup目录中,命令如下:copy C:\dir1 D:\backup /s在命令中指定源目录路径和目标目录路径,使用"/s"参数来复制目录及其所有子目录和文件。
4.复制文件并重命名:使用Copy命令复制文件并重命名的语法如下:copy [源文件路径] [目标文件路径新名称]例如,将C盘下的test.txt文件复制到D盘,并重命名为newfile.txt,命令如下:copy C:\test.txt D:\newfile.txt在命令中指定源文件路径和目标文件路径,并使用新的文件名作为目标文件名。
批处理--Copy命令大全1.Echo 命令打开回显或关闭请求回显功能,或显示消息。
如果没有任何参数,echo 命令将显示当前回显设置。
[p:1]语法echo [{on|off}] [message]Sample:[Copy to clipboard] [ - ]CODE:echo off / echo hello world在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。
2.@ 命令表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
Sample:[Copy to clipboard] [ - ]CODE:@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:[Copy to clipboard] [ - ]CODE:if {%1}=={} goto noparmsif {%2}=={} goto noparms(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。
)@Rem check parameters if null show usage:noparmsecho Usage: monitor.bat ServerIP PortNumbergoto end标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是标签,goto命令就是根据这个:来寻找下一步跳到到那里。
最好有一些说明这样你别人看起来才会理解你的意图啊。
4.Rem 命令注释命令,在C语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。
Rem MessageSample:[Copy to clipboard] [ - ]CODE:@Rem Here is the description.5.Pause 命令运行Pause 命令时,将显示下面的消息:Press any key to continue . . .Sample:[Copy to clipboard] [ - ]CODE:@echo off:begincopy a:*.* d:\backecho Please put a new disk into driver Apausegoto 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的内容如下:[Copy to clipboard] [ - ]CODE:@echo offchoice /c:dme defrag,mem,endif errorlevel 3 goto defrag (应先判断数值最高的错误码)if errorlevel 2 goto memif errotlevel 1 goto end:defragc:\dos\defraggoto end:memmemgoto end:endecho good bye此文件运行后,将显示defrag,mem,end[D,M,E]? 用户可选择d m e ,然后if语句将作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到end标号处,然后程序将显示good bye,文件结束。
9.If 命令if 表示将判断是否符合规定的条件,从而决定执行不同的命令。
有三种格式:1、if "参数" == "字符串" 待执行的命令参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。
(注意是两个等号)如[Copy to clipboard] [ - ]CODE:if "%1"=="a" format a:if {%1}=={} goto noparmsif {%2}=={} goto noparms2、if exist 文件名待执行的命令如果有指定的文件,则条件成立,运行命令,否则运行下一句。
如if exist config.sys edit config.sys3、if errorlevel / if not errorlevel 数字待执行的命令如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。
如if errorlevel 2 goto x2DOS程序运行时都会返回一个数字给DOS,称为错误码errorlevel或称返回码,常见的返回码为0、1。
10.for 命令for 命令是一个比较复杂的命令,主要用于参数在指定的范围内循环执行命令。
在批处理文件中使用FOR 命令时,指定变量请使用%%variablefor {%variable|%%variable} in (set) do command [ CommandLineOptions]%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-检查以[drive:]path 为根的目录树,指向每个目录中的FOR 语句。
如果在/R 后没有指定目录,则使用当前目录。
如果集仅为一个单点(.)字符,则枚举该目录树。
FOR /L %variable IN (start,step,end) DO command [command-para该集表示以增量形式从开始到结束的一个数字序列。
因此,(1,1,5) 将产生序列1 2 3 4 5,(5,-1,1) 将产生序列(5 4 3 2 1)。
FOR /F ["options"] %variable IN (file-set) DO commandFOR /F ["options"] %variable IN ("string") DO commandFOR /F ["options"] %variable IN (command) DO command或者,如果有usebackq 选项:FOR /F ["options"] %variable IN (file-set) DO commandFOR /F ["options"] %variable IN ("string") DO commandFOR /F ["options"] %variable IN (command) DO commandfilenameset 为一个或多个文件名。
继续到filenameset 中的下一个文件之前,每份文件都已被打开、读取并经过处理。
处理包括读取文件,将其分成一行行的文字,然后将每行解析成零或更多的符号。
然后用已找到的符号字符串变量值调用For 循环。
以默认方式,/F 通过每个文件的每一行中分开的第一个空白符号。
跳过空白行。
您可通过指定可选"options"参数替代默认解析操作。
这个带引号的字符串包括一个或多个指定不同解析选项的关键字。
这些关键字为:eol=c - 指一个行注释字符的结尾(就一个)skip=n - 指在文件开始时忽略的行数。
delims=xxx - 指分隔符集。
这个替换了空格和跳格键的默认分隔符集。
tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代的for 本身。
这会导致额外变量名称的格式为一个范围。
通过nth 符号指定m符号字符串中的最后一个字符星号,那么额外的变量将在最后一个符号解析之分配并接受行的保留文本。