Board logo

标题: [文件操作] [已解决]批处理如何把文件放到对应的文件夹下并形成多级目录? [打印本页]

作者: easedemon    时间: 2011-4-11 17:10     标题: [已解决]批处理如何把文件放到对应的文件夹下并形成多级目录?

本帖最后由 easedemon 于 2011-4-12 08:36 编辑

用批处理创建文件夹1,2,3,……60
for /l %%i in ( 1 1 60 ) do md %%i
用批处理创建文件1,2,3,……60
for /l %%i in (1 1 60 ) do echo %%i>%%i.txt
请问如何把文件1,2,3,……60移动到对应的文件夹1,2,3,……60呢?
在移动好文件1,2,3,……60后如何把文件夹1,2,3,……60从同级目录变成60级地多级目录呢?(不考虑系统路径255的限制)
作者: hfg1977    时间: 2011-4-11 17:49

直达最终目的:
  1. @echo off
  2. setlocal enabledelayedexpansion&cls
  3. for /l %%i in ( 1 1 60 ) do set "dir_=!dir_!\%%i"\
  4. md "%~dp0.!dir_!"
  5. cd.>"%~dp0.\1\1.txt"
  6. for /f "delims=" %%a in ('dir /ad/s/b 1\') do (cd.>"%%~a\%%~na.txt")
复制代码

作者: hanyeguxing    时间: 2011-4-11 19:08

本帖最后由 hanyeguxing 于 2011-4-11 19:44 编辑

1,从创建目录、文件到完成,直接:
  1. @echo off
  2. for /l %%a in (1 1 60) do (
  3.         md %%a
  4.         cd/d>%%a\%%a.txt
  5.         cd/d %%a
  6. )
复制代码
2,如果60个目录、文件已创建,要移动,则:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /l %%a in (1 1 60) do (
  3.         move %%a !a! 2>nul
  4.         set a=!a!\%%a
  5.         move %%a.txt !a!
  6. )
复制代码

作者: easedemon    时间: 2011-4-12 08:36

谢谢斑竹的帮忙,搞定了。
2L的那位的代码还是有点问题的,它之创建了1.txt一个文件就再不创建文件了。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2