[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理怎样COPY两个文件中的一个?

D:下有两个文件 wxDb20101012154427390_tChat.bak和wxDb20101012154427390.bak。我想copy第一个文件,不想copy 第二个文件。求代码,谢谢。

我原来的代码是这样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
我就想知道要改那一点。。

TOP

试试 为什么你 复制到d:\ftpdb\wxdb\还要 删除呢 是不是写错 要删除的应该是D:\wxdb\
  1. del d:\ftpdb\*.rar
  2. rd /s /q d:\ftpdb\wxdb\
  3. md d:\ftpdb\wxdb\
  4. for /f "delims=" %%a in ('dir /a-d/o-d/b/d "D:\wxdb\*tchat*.bak"') do (
  5.        copy D:\wxdb\"%%a" "d:\ftpdb\wxdb\" & goto:123)
  6. del d:\ftpdb\wxdb\*.bak /q
  7. start d:\ftpdb\landb.exe
  8. exit
复制代码

[ 本帖最后由 leap 于 2010-10-12 17:25 编辑 ]

TOP

你好。如果是我想copy第二个文件也就是没有tchat的文件怎么办?

TOP

那就直接copy啊

TOP

不是的。。。这两个文件不是固定的名字。是随即的。。但是_tchat是固定的。。我想copy没有_tchat的文件

TOP

原帖由 wang6542975 于 2010-10-12 18:40 发表
不是的。。。这两个文件不是固定的名字。是随即的。。但是_tchat是固定的。。我想copy没有_tchat的文件

那你可以反过来 把两个都COPY过来 再找出 含有chat的 删除

TOP

楼主很好笑,他的问题比喻如下:
我现在有两个女朋友,我想娶第一个老婆,不想娶第二个老婆,怎么娶?球代码。

TOP

  1. @echo off &setlocal enabledelayedexpansion
  2. for /f %%i in ('dir /s /b /a-d "文件路径"') do (
  3.   set a=%%~ni
  4.   set a=!a:~-6!
  5. echo !a!
  6.   if "!a!"=="_tChat" (
  7.     copy %%i c:\
  8.   )
  9. )
  10. pause
复制代码

郁闷。。[code]之前不是都batman帮忙加上的吗。。。现在偷懒了啊。。。。- -、、

[ 本帖最后由 qq506657335 于 2010-10-14 21:18 编辑 ]
1

评分人数

    • Batcher: 请编辑自己的帖子,把代码放到code标签里面 ...PB -2

TOP

恩,知道了。谢谢了。真的感谢。

TOP

昨天温习了find命令 发现可以用
直接排除不含chat的文件
  1. del d:\ftpdb\*.rar
  2. rd /s /q d:\ftpdb\wxdb\
  3. md d:\ftpdb\wxdb\
  4. for /f "delims=" %%a in ('dir /a-d/o-d/b/d "D:\wxdb\*.bak"^|find /v "chat"') do (
  5.        copy D:\wxdb\"%%a" "d:\ftpdb\wxdb\" & goto:123)
  6. del d:\ftpdb\wxdb\*.bak /q
  7. start d:\ftpdb\landb.exe
  8. exit
复制代码

TOP

返回列表