标题: [文本处理] [已解决]批处理如何在多个子目录下,搜索以下文件夹,文件夹中新建相应的TXT内容? [打印本页]
作者: 228630386 时间: 2015-4-15 18:35 标题: [已解决]批处理如何在多个子目录下,搜索以下文件夹,文件夹中新建相应的TXT内容?
本帖最后由 228630386 于 2015-4-15 20:56 编辑
如何在多个子目录下,搜索以下文件夹,文件夹中新建相应的TXT内容?
2142010050010
2142010050010
2142010050010
2142010050010
2142010050411
就是搜索这些相应的文件夹中新建后面TXT内容。
2142010050010 女款衬衫-无袖衬衫
2142010050010 女款衬衫-无袖衬衫
2142010050010 女款衬衫-无袖衬衫
2142010050010 女款衬衫-无袖衬衫
2142010050411 女款衬衫-无袖衬衫
作者: pcl_test 时间: 2015-4-15 18:49
回复 1# 228630386
这文字说明,让语文老师又要躺枪了
作者: 228630386 时间: 2015-4-15 18:53
回复 2# pcl_test
亲,不好意思,语言能力表达得不太好,你应该懂的。呵呵。。。
作者: pcl_test 时间: 2015-4-15 19:24
你这代码从哪里弄来的?原问题是怎样的?文件夹结构是怎样的?最好还是把原本问题说下,这样没有来头的改代码,比重新编写代码更头疼
作者: 228630386 时间: 2015-4-15 19:39
回复 4# pcl_test
我改了一下,这应该比较明白和简单一点了。
作者: pcl_test 时间: 2015-4-15 20:11
本帖最后由 pcl_test 于 2015-4-15 20:13 编辑
- @echo off 2>nul 3>nul
- for /f "tokens=1*" %%a in ('more +8 %0') do (
- for /r /d %%i in (*) do (
- if "%%~ni" equ "%%a" cd.>"%%i\%%b.txt"
- )
- )
- echo 完成!2秒后自动关闭
- ping 0 -n 3 >nul
- 2142010050010 女款衬衫-无袖衬衫
- 2142010050010 女款衬衫-无袖衬衫
- 2142010050010 女款衬衫-无袖衬衫
- 2142010050010 女款衬衫-无袖衬衫
- 2142010050411 女款衬衫-无袖衬衫
复制代码
作者: 228630386 时间: 2015-4-15 20:15
回复 4# pcl_test
亲,这个能解决么?
作者: pcl_test 时间: 2015-4-15 20:17
按你问题描述就是这样滴,所以能不能解决取决于你的表达能力了
作者: 228630386 时间: 2015-4-15 20:25
回复 8# pcl_test
亲,可以了,非常感谢你,帮了我一个大忙。
作者: gawk 时间: 2015-4-15 20:31
- @echo off
- for /r /d %%i in (*) do (
- for %%j in (2142010050010 2142010050010 2142010050010 2142010050010 2142010050411) (
- if "%%~ni" equ "%%j" (
- cd.>"%%i\女款衬衫-无袖衬衫.txt"
- )
- )
- )
复制代码
作者: gawk 时间: 2015-4-15 20:32
回复 6# pcl_test
for /r /d 放在外层可能有助于提高执行效率
作者: CrLf 时间: 2015-4-15 21:04
回复 11# gawk
Are you sure?
作者: gawk 时间: 2015-4-15 21:20
回复 12# CrLf
瞎猜的
作者: pcl_test 时间: 2015-4-16 11:29
回复 11# gawk
假设要处理10个文件夹项, for /r /d 放在外层需遍历10次目录+读取10次文件夹项,如果在里层,那么只需遍历10次目录+读取1次文件夹项
作者: ww0000 时间: 2015-4-16 16:30
回复 6# pcl_test
老师,能否搞个,对同目录下的所有文件夹,生成文件名的?
作者: pcl_test 时间: 2015-4-16 17:14
本帖最后由 pcl_test 于 2015-4-16 21:11 编辑
回复 15# ww0000 - @echo off
- for /d %%a in (*) do (
- pushd "%%a"
- for /f "delims=" %%b in ('dir /a-d /b') do >>"%%a.txt" echo,%%~nb
- popd
- )
- pause
复制代码
作者: ww0000 时间: 2015-4-16 19:45
回复 16# pcl_test
谢谢老师,我想要的是,生成的每个文本里面是每个文件夹中文件的文件名。
作者: ww0000 时间: 2015-4-16 21:35
回复 16# pcl_test
老师,还是不成功!
作者: pcl_test 时间: 2015-4-16 21:36
回复 18# ww0000
妥妥的
作者: ww0000 时间: 2015-4-16 21:46
回复 16# pcl_test
真不行呀,我的文件夹与执行文件在同一目录
作者: pcl_test 时间: 2015-4-16 22:14
回复 20# ww0000
测试妥妥的,应该是你自己的问题
作者: ww0000 时间: 2015-4-17 08:15
回复 16# pcl_test
可以现实,但是能否将目录文件放到与执行文件同一目录?
再一个是否能现实历遍子文件夹?
谢谢
作者: pcl_test 时间: 2015-4-17 08:55
本帖最后由 pcl_test 于 2015-4-17 09:02 编辑
回复 22# ww0000 - @echo off
- (for /r /d %%a in (*) do (
- pushd "%%a"
- echo,●文件夹【%%a】
- for /f "delims=" %%b in ('dir /a-d /b 2^>nul') do echo,%%~nb
- popd
- ))>"文件列表.txt"
- pause
复制代码
作者: ww0000 时间: 2015-4-17 11:31
回复 23# pcl_test
谢谢老师的帮助!!!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |