zoukankan      html  css  js  c++  java
  • 批处理复制最新的文件夹里面的bmp文件到指定目录

    批处理复制最新的文件夹里面的bmp文件到指定目录
    悬赏分:200 - 解决时间:2008-9-23 14:28
    A机为服务器,B机为普通电脑。两台电脑里的共享文件均可以互访。
    B机里面有一个文件夹“D:\question\new”里面有随机命名的文件夹。而且经常更新。
    要求:在A机上运行批处理命令B.bat。批处理要达到的结果为:
    要将B机D盘“question”里的“new”文件夹里最后建立的一个文件夹中的所有bmp文件复制到A机的E盘的old文件夹下。而且,如果A机E盘old文件夹里有同名文件,则把复制过来的文件的文件名前面加字母“n”。
    问题补充:
    谁回答的正确,分数就给谁,不分先后,命令不分长短。只要能达到目的就可以了。
    补充:B电脑的IP为192.168.1.102
    破人破天的批处理运行没效果,系统提示CMD不支持将UNC路径作为当前目录。不过这个问题可以解决,就是先在批处理中映射网络驱动器,复制完了再断开就好了。
    200分高分悬赏完美解决方案,最好解释每条命令的函意。
    B电脑D盘question目录里面的new里面只有目录,没有文件,而且子目录里面只有文件再没有目录了。如果复制过来后有重名就在前面加n,如果加n后还重复就覆盖。当然,搞成自动编号也行。
    最佳答案
    测试成功! 

    我不会映射网络驱动器,你先写一个批处理:
    第一行:把B的D盘映射为Z盘
    第二行:call B.bat
    第三行:断开Z盘

    我为你写的B.bat:

    功能是将A机Z盘“question”里的“new”文件夹里最后建立的一个文件夹中的所有bmp文件复制到A机的E盘的old文件夹下。而且,如果A机E盘old文件夹里有同名文件,则把复制过来的文件的文件名前面加字母“n”。

    有三个函数,findnewfolder函数找出某个文件夹里最新的文件夹;
    copyandrename函数是智能复制,如果重名的话文件名加上n并递归;
    main函数是主函数,先调用findnewfolder,找不到的话给出错误信息,否则对findnewfolder给出的文件夹里面所有的bmp文件调用copyandrename.
    (都用的是很简单的语句,你一定能看懂)


    @echo off
    setlocal enabledelayedexpansion
    call:main
    pause
    endlocal
    goto :eof

    :main
    if not exist E:\old md E:\old
    call:findnewfolder "Z:\question\new"
    if "!answer!"=="" (
    echo Z:\question\new里找不到文件夹
    exit /b
    )
    for /f "delims=" %%i in ('dir /a:-d /b /s "!answer!"\*.bmp') do (
    call:copyandrename "%%i" "E:\old\%%~nxi"
    )
    exit /b

    :findnewfolder
    for /f "delims=" %%i in ('dir /a:d /b /o:-d %1') do (
    set "answer=%~1\%%i"
    exit /b
    )
    set "answer="
    exit /b

    :copyandrename
    if not exist %2 (
    copy %1 %2
    exit /b
    ) else (
    call:copyandrename %1 "%~dp2n%~nx2"
    exit /b
    )
    摘自:http://zhidao.baidu.com/question/69051536.html
  • 相关阅读:
    Api记录
    选择排序、冒泡排序、二分查找(折半查找)
    inline关键字
    c++,虚函数,单继承,多继承虚表剖析
    关于类模版迭代器提出时的错误
    关于类模版迭代器提出时的错误2
    菱形继承,多继承,虚继承、虚表的内存结构全面剖析(逆向分析基础)
    VC++错误调试
    引用计数
    选择
  • 原文地址:https://www.cnblogs.com/blsong/p/1605388.html
Copyright © 2011-2022 走看看