中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [1] [2] »
作者:
标题: 合并文件夹的疑问? 上一主题 | 下一主题
q1a2z3q1a2z3
初级用户





积分 88
发帖 41
注册 2006-5-13
状态 离线
『楼 主』:  合并文件夹的疑问?

合并文件夹的疑问?

合并 D盘下 若干文件夹,因为文件夹的名字经常变动,所以感觉无从下手。

不知怎样把这些文件夹合并成一个文件夹。

2008-8-16 00:10
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 2 楼』:  


@echo off
set mypath=C:\test
if not exist "%mypath%\dstfolder" (
  md "%mypath%\dstfolder"
)
for /f "tokens=*" %%a in ('dir /s /b /ad "%mypath%"') do (
  if "%%a" neq "%mypath%\dstfolder" (
    move /y %%a "%mypath%\dstfolder">nul 2>nul
  )
)




2008-8-16 00:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复
q1a2z3q1a2z3
初级用户





积分 88
发帖 41
注册 2006-5-13
状态 离线
『第 3 楼』:  

想把1-8(包括其中的子文件夹)的文件夹中的文件(phrases.ini文件除外)都放到到”合并“文件夹。如果在目录中存在同名的文件,则把同名的文件重新命名为原文件名.old   

注释:文件夹的名字经常变动,不一定是1-8

phrases.ini

如图:
http://v.iseeclan.com/?i=2008-8/3/8241740/1.JPG



要达到的效果
http://v.iseeclan.com/?i=2008-8/3/8240003/1.JPG

[ Last edited by q1a2z3q1a2z3 on 2008-8-16 at 01:27 PM ]

2008-8-16 09:50
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 4 楼』:  

贴图的时候,需要把链接放到img标签里面,我先看看效果:








2008-8-16 11:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 5 楼』:  


@echo off
set mypath=E:
if not exist "%mypath%\合并" (
  md "%mypath%\合并"
)
for /f "tokens=*" %%a in ('dir /s /b /ad "%mypath%"') do (
  if "%%a" neq "%mypath%\合并" (
    for /f "tokens=*" %%b in ('dir /s /b /a-d "%%a" 2^>nul') do (
      if exist "%mypath%\合并\%%~nxb" (
        ren "%mypath%\合并\%%~nxb" "%mypath%\合并\%%~nb.old">nul 2>nul
      )
        move "%%b" "%mypath%\合并">nul 2>nul
    )
  )
)




2008-8-16 12:15
查看资料  发短消息 网志   编辑帖子  回复  引用回复
q1a2z3q1a2z3
初级用户





积分 88
发帖 41
注册 2006-5-13
状态 离线
『第 6 楼』:  

亲爱的HAT!

对于你我已经无话可说了!太感动了。

一而再、再而三的帮助我这样一个批处理的弱者的,-^^-

一个重庆人,毫无利己的动机,把一个陌生人的bat当作他自己的事业,这是什么精神?这是国际主义的精神,这是共产主义的精神,每一个中国人都要学习这种精神。

再次感谢!

2008-8-16 12:51
查看资料  发短消息 网志   编辑帖子  回复  引用回复
q1a2z3q1a2z3
初级用户





积分 88
发帖 41
注册 2006-5-13
状态 离线
『第 7 楼』:  

同名文件,无法重命名?最后合并的文件夹只能保存一个文件。

2008-8-16 14:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by q1a2z3q1a2z3 at 2008-8-16 12:51:
亲爱的HAT!

对于你我已经无话可说了!太感动了。

一而再、再而三的帮助我这样一个批处理的弱者的,-^^-

一个重庆人,毫无利己的动机,把一 ...

Orz

2008-8-16 14:59
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 9 楼』:  Re 7楼


@echo off
set mypath=E:
if not exist "%mypath%\合并" (
  md "%mypath%\合并"
)
for /f "tokens=*" %%a in ('dir /s /b /ad "%mypath%"') do (
  if "%%a" neq "%mypath%\合并" (
    for /f "tokens=*" %%b in ('dir /s /b /a-d "%%a" 2^>nul') do (
      if exist "%mypath%\合并\%%~nxb" (
        ren "%mypath%\合并\%%~nxb" "%%~nb.old">nul 2>nul
      )
      move "%%b" "%mypath%\合并">nul 2>nul
    )
  )
)




2008-8-16 19:13
查看资料  发短消息 网志   编辑帖子  回复  引用回复
BC
中级用户




积分 338
发帖 175
注册 2007-10-21
状态 离线
『第 10 楼』:  

建议一下,能否以后在写的时候加上注解呢?
新手很难看地懂...



C:\
C:\Del BC
2008-8-16 19:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 11 楼』:  

哪句不懂问哪句吧,写注释浪费时间。
完全不懂的话,先看看教程。



2008-8-16 19:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
BC
中级用户




积分 338
发帖 175
注册 2007-10-21
状态 离线
『第 12 楼』:  

嗯,这样也行...



C:\
C:\Del BC
2008-8-16 19:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
BC
中级用户




积分 338
发帖 175
注册 2007-10-21
状态 离线
『第 13 楼』:  

%%~nxb

是什么意思?



C:\
C:\Del BC
2008-8-16 19:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 14 楼』:  Re 13楼

for /?

  Quote:
In addition, substitution of FOR variable references has been enhanced.
You can now use the following optional syntax:

    %~I         - expands %I removing any surrounding quotes (")
    %~fI        - expands %I to a fully qualified path name
    %~dI        - expands %I to a drive letter only
    %~pI        - expands %I to a path only
    %~nI        - expands %I to a file name only
    %~xI        - expands %I to a file extension only
    %~sI        - expanded path contains short names only
    %~aI        - expands %I to file attributes of file
    %~tI        - expands %I to date/time of file
    %~zI        - expands %I to size of file
    %~$PATH:I   - searches the directories listed in the PATH
                   environment variable and expands %I to the
                   fully qualified name of the first one found.
                   If the environment variable name is not
                   defined or the file is not found by the
                   search, then this modifier expands to the
                   empty string

The modifiers can be combined to get compound results:

    %~dpI       - expands %I to a drive letter and path only
    %~nxI       - expands %I to a file name and extension only
    %~fsI       - expands %I to a full path name with short names only
    %~dp$PATH:I - searches the directories listed in the PATH
                   environment variable for %I and expands to the
                   drive letter and path of the first one found.
    %~ftzaI     - expands %I to a DIR like output line





2008-8-16 19:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
BC
中级用户




积分 338
发帖 175
注册 2007-10-21
状态 离线
『第 15 楼』:  

哦,原来这样,hat你的机是英文版?不错哦



C:\
C:\Del BC
2008-8-16 21:12
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: