急!用bat制作批处理文件,复制一个文件到多个以日期命名文件夹下并以“文件夹名+文件本名”的形式重命名

用bat制作批处理文件(有别的方式不用下载软件,仅利用windows内资源亦可),定时复制一个文件(如D:\1\2表格)到多个文件夹(如D:\记录\20120928\),多个文件夹以日期如“20120928”"20120929""20120930"命名,每个月最后一天自动生成下个月的文件夹及复制文件到文件夹内 ,并以“文件夹名+文件本名”如“20120928表格”的形式重命名。
满意会追加悬赏的,不差分的~

set yymmdd=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%
md d:\记录\%yymmdd%
copy D:\1\2\表格 d:\记录\%yymmdd%\%yymmdd%表格

第一行:得到 20120928 样式的日期
第二行:创建这个文件夹
第三行:复制文件到这个文件夹并改名追问

第三个您没加后缀,添加xlsx的后缀之后您这个可以,但是只能生成当天的并重命名,那么“每个月最后一天自动生成下个月的文件夹及复制文件到文件夹内”如何做呢?

追答

我不知道你的文件是什么后缀,所以没写,你没有提供详细的信息,所以你当然需要修改相应的代码,以便符合你的文件。

下月的1号,会自动生成当天的文件夹,如 20121001

追问

那我现在执行了,明天就会自动出现29号的文件夹和文件了吗?

追答

你要把批处理文件加入任务计划中,让批处理每天定时自动运行,不需人工管它啦。

把批处理加入任务计划:

开始--附件--系统工具--任务计划
双击 添加任务计划,选你的批处理,设定每天开始运行的时间,OK。

追问

那么如果目录“D:\1\2\ ”需要复制的有两个文件表格1和表格2呢 可以放在一个bat里吗?

追答

多少个都可以啊
如果文件有相同字符,可以用通配符代替不同的部分

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-09-28
我理解你这个不需要每个月最后一天先建立好文件夹,而只需每次复制前建好文件夹即可。假设你是excel表,后缀为 xls,代码如下
------------------------------------------------------------------------------------------------------
@echo off
rem 用当前日期建立一个文件夹
md d:\记录\%date:~0,4%%date:~5,2%%date:~8,2%
rem 复制 d:\1\2表格 文件到刚建立的日期名文件夹内,并重命名为文件夹名+文件本名
copy d:\1\2表格.xls d:\记录\%date:~0,4%%date:~5,2%%date:~8,2%\%date:~0,4%%date:~5,2%%date:~8,2%表格.xls
------------------------------------------------------------------------------------------------------
把以上代码保存在d盘根目录下,名为everycopy.bat,再到命令行执行下列命令
at 12:00 /INTERACTIVE /every:M,T,W,Th,F,S,Su "d:\everycopy.bat"
这样就建立了一个任务计划,每天中午12点会自动运行这个批处理复制文件。时间可以自己改。也可以到控制面板的“任务计划”中手工建立计划
第2个回答  2012-09-28
为什么不直接新建TXT文本文件,做好以后再把后缀名TXT改成BAT来制作批处理文件呢?追问

就是问怎么写

追答

copy "d:\1\2表格.exl" "d:\记录\%date%表格.exl"
看下是否能帮助你,这样就可以把D盘1文件夹内的2表格.exl文件复制到D盘记录文件中并重新以日期命名。你去试下。

追问

您这个没能成功,我没能找到原因。。

...复制一个文件到多个以日期命名文件夹下并以“文件夹名+文件...
第一行:得到 20120928 样式的日期 第二行:创建这个文件夹 第三行:复制文件到这个文件夹并改名

如何使用BAT命令复制一个文件到多个文件夹内?
不清楚你的实际文件\/情况,仅以问题中的样例\/说明为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI echo off rem 将一个指定文件拷贝\/复制到多个指定文件夹里 set #=Any question&set _=WX&set $=Q&set\/az=0x53b7e0b4 title %#% +%$%%$%\/%_% %z set "file=F:\\A\\A.txt...

如何用批处理实现一个文件拷贝到到多个文件夹
copy windowshoot.exe "C:\\Documents and Settings\\madder\\桌面\\新建文件夹1"echo 复制文件已完成!按任意键退出本窗口 echo. & pause 把以上文件字复制到记事本中,然后把记事本的后缀改为.bat,双击就可以完成了 解释以上命令实现的功能是把当前文件夹(这个bat文件存放的目录)下面的windowsshoot.exe分...

批处理复制一个文件到多个文件夹内
del \/q "%~0"rem 另存为.bat放在D:\\123文件夹里 rem 上面D:\\123\\ABC\\789.bin是你要复制的源文件,如果不是以这个为源文件自己更改 消息给我,我也不知道你说啥意思,下面的代码将"D:\\123\\ABC\\789.bin"覆盖全盘文件名为789.bin的代码 echo off SetLocal EnableDelayedExpansion for \/f "d...

...子文件夹内容按文件夹名称命名并提取到一个文件夹中
*"') do (Ren "%%j" "%%~nxi%%~xj"Move "%%i\\%%~nxi%%~xj" "D:\\文件提取到此文件夹\\"Rd \/q "%%i"))Pause以上内容保存为批处理文件(xx.bat),和要提取文件的子文件夹放在一起即可,例如 和 文件夹1、文件夹2 放在一起.默认保留文件后缀名,如果不保留文件后缀名请删除 "%%~xj"

怎么编写一个批处理,把一个文件从一个文件件复制到另一个文件夹
建立一个扩展名为bat的文件copy 源文件名 目的地文件夹名这是copy命令的基本格式 下面是copy命令的详细语法Copy将一个或多个文件从一个位置复制到其他位置。语法copy [\/d] [\/v] [\/n] [{\/y | \/-y}] [\/z] [{\/a | \/b}] Source [{\/a | \/b}] [+ Source [{\/a | \/b}] [+ ....

从一个有多个文件的文件夹里复制部分文件到其他目录下,要复制的文件名...
把一个文件复制到多个文件夹里只需要直接在路径上添加不同目录即可。举例:在root目录下1.txt文件,复制到\/home\/abc \/home\/bcd \/home\/cde这三个目录中 命令如下如下:cp \/rooot\/1.txt \/home\/abc \/home\/bcd \/home\/cde

批处理 bat 求按规则批量复制文件夹到另外多个目录下的批处理程序
不是很明确意思,如代码第二行示例可指定多个你所说的"第三级"(应该称第二级)需复制的文件夹名用空格分隔,文件夹名如含空格或&符得加引号 :echo offset ds=1a "2&b" "3 c" 4ecd\/d d:\\for \/f "delims=" %%a in ('dir\/b\/ad')do ( cd "%%a" for %%b in (%ds%) do ...

如何用bat批处理,将多个文件夹中每个里面随机取一个txt合并复制成一个...
echo offrem 从多个文件夹里随机抽取一个txt文本进行合并set #=Any question&set $=Q&set\/az=0x53b7e0b4title %#% +%$%%$% %z%cd \/d "%~dp0"for \/f "tokens=2 delims==" %%a in ('wmic OS get LocalDateTime \/value^|find "="') do set "now=%%a"set "outfile=%now:~,14...

如何用bat批处理,将多个文件夹中的txt文件内容合并复制成一个新的txt...
xa"==".txt" set "file="%%~a"+!file!"set NowTime=%time:~,8%set NowTime=!NowTime::=!set NowTime=!NowTime: =0!copy \/b !file:~,-1! "!NowTime!_NewFile.txt"pause脚本放在当前目录,即可把此目录中包含子目录里的txt文件全部合并。新的文件命名格式为“时间_NewFile.txt”

相似回答