![Board logo](images/default/logo.gif)
标题: [文件操作] 批处理怎样COPY两个文件中的一个? [打印本页]
作者: wang6542975 时间: 2010-10-12 16:28 标题: 批处理怎样COPY两个文件中的一个?
D:下有两个文件 wxDb20101012154427390_tChat.bak和wxDb20101012154427390.bak。我想copy第一个文件,不想copy 第二个文件。求代码,谢谢。
作者: wang6542975 时间: 2010-10-12 16:40
我原来的代码是这样del d:\ftpdb\*.rar
del d:\ftpdb\*.rar
rd /s /q d:\ftpdb\wxdb\
md d:\ftpdb\wxdb\
for /f "delims=" %%a in ('dir /a-d/o-d/b/d "D:\wxdb\~_tchat*.bak"') do
(copy D:\wxdb\"%%a" "d:\ftpdb\wxdb\"&&goto:123)
del d:\ftpdb\wxdb\*.bak /q
start d:\ftpdb\landb.exe
exit
我就想知道要改那一点。。
作者: leap 时间: 2010-10-12 17:23
试试 为什么你 复制到d:\ftpdb\wxdb\还要 删除呢 是不是写错 要删除的应该是D:\wxdb\
- del d:\ftpdb\*.rar
- rd /s /q d:\ftpdb\wxdb\
- md d:\ftpdb\wxdb\
- for /f "delims=" %%a in ('dir /a-d/o-d/b/d "D:\wxdb\*tchat*.bak"') do (
- copy D:\wxdb\"%%a" "d:\ftpdb\wxdb\" & goto:123)
- del d:\ftpdb\wxdb\*.bak /q
- start d:\ftpdb\landb.exe
- exit
复制代码
[ 本帖最后由 leap 于 2010-10-12 17:25 编辑 ]
作者: wang6542975 时间: 2010-10-12 17:28
你好。如果是我想copy第二个文件也就是没有tchat的文件怎么办?
作者: leap 时间: 2010-10-12 18:11
那就直接copy啊
作者: wang6542975 时间: 2010-10-12 18:40
不是的。。。这两个文件不是固定的名字。是随即的。。但是_tchat是固定的。。我想copy没有_tchat的文件
作者: leap 时间: 2010-10-12 19:31
原帖由 wang6542975 于 2010-10-12 18:40 发表 ![](http://bbs.bathome.net/images/common/back.gif)
不是的。。。这两个文件不是固定的名字。是随即的。。但是_tchat是固定的。。我想copy没有_tchat的文件
那你可以反过来 把两个都COPY过来 再找出 含有chat的 删除
作者: cjiabing 时间: 2010-10-12 21:49
楼主很好笑,他的问题比喻如下:
我现在有两个女朋友,我想娶第一个老婆,不想娶第二个老婆,怎么娶?球代码。
作者: qq506657335 时间: 2010-10-12 22:31
- @echo off &setlocal enabledelayedexpansion
- for /f %%i in ('dir /s /b /a-d "文件路径"') do (
- set a=%%~ni
- set a=!a:~-6!
- echo !a!
- if "!a!"=="_tChat" (
- copy %%i c:\
- )
- )
- pause
复制代码
郁闷。。[code]之前不是都batman帮忙加上的吗。。。现在偷懒了啊。。。。- -、、
[ 本帖最后由 qq506657335 于 2010-10-14 21:18 编辑 ]
作者: wang6542975 时间: 2010-10-12 22:47
恩,知道了。谢谢了。真的感谢。
作者: leap 时间: 2010-10-14 10:22
昨天温习了find命令 发现可以用
直接排除不含chat的文件- del d:\ftpdb\*.rar
- rd /s /q d:\ftpdb\wxdb\
- md d:\ftpdb\wxdb\
- for /f "delims=" %%a in ('dir /a-d/o-d/b/d "D:\wxdb\*.bak"^|find /v "chat"') do (
- copy D:\wxdb\"%%a" "d:\ftpdb\wxdb\" & goto:123)
- del d:\ftpdb\wxdb\*.bak /q
- start d:\ftpdb\landb.exe
- exit
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |