标题: [文件操作] [已解决]批处理怎样把同文件夹下多个文件复制成更多个文件? [打印本页]
作者: ruoru376 时间: 2015-4-26 15:49 标题: [已解决]批处理怎样把同文件夹下多个文件复制成更多个文件?
简单的说就像:Ctrl+A Ctrl+V 实现一样的功能,但是要控制文件夹下文件总量小于100个
比如:目录下有个文件夹名为为 “文件夹”,而“文件夹”下有 a.txt b.txt c.txt ……(总数为8个);那么经过复制之后 “文件夹”下 就变成96个文件。含a.txt b.txt c.txt ……里面内容的分别为12个。
比如:目录下有个文件夹名为为 “文件夹”,而“文件夹”下有 a.txt b.txt c.txt ……(总数为9个);那么经过复制之后“文件夹”下 就变成99个文件。含a.txt b.txt c.txt ……里面内容的分别为11个。
由于对bat 不大熟悉,想了很久,终究不知道怎么做,希望各位大神,老师,指教指教!谢谢
作者: pcl_test 时间: 2015-4-26 18:12
本帖最后由 pcl_test 于 2015-4-26 18:34 编辑
需要安装WinRAR- @echo off
- ::指定WinRAR安装路径和程序
- set "rarpath=C:\Program Files\WinRAR\rar.exe"
- "%rarpath%" a "tmp.rar" *.txt
- for %%a in (*.txt) do set /a n+=1
- set /a m=100/n
- set /a m-=1
- for /l %%b in (1 1 %m%) do (
- "%rarpath%" e -or "tmp.rar"
- )
- del "tmp.rar" /f /q 2>nul
- pause
复制代码
作者: pcl_test 时间: 2015-4-26 18:33
- @echo off
- setlocal enabledelayedexpansion
- for %%a in (*.txt) do (
- set "s=!s!"%%a","
- set /a n+=1
- )
- set /a m=100/n
- set /a m-=1
- for %%b in (!s!) do (
- for /l %%c in (1 1 %m%) do (
- copy %%b "%%~nb(%%c)%%~xb"
- )
- )
- pause
复制代码
作者: ruoru376 时间: 2015-4-26 19:51
回复 3# pcl_test
:) 还真不错,非常感谢!呵呵
作者: bailong360 时间: 2015-4-26 21:12
回复 4# ruoru376
问题解决后,请编辑顶楼帖子在标题前面注明[已解决],并给回答者加分。
http://www.bathome.net/thread-3473-1-1.html
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |