标题: [文件操作] 批处理如何获取当前目录下所有文件名称并新建相同的目录? [打印本页]
作者: COSByVal 时间: 2021-8-15 10:23 标题: 批处理如何获取当前目录下所有文件名称并新建相同的目录?
请问如何获取当前目录下所有文件名称(不含后缀),并在当前目录下用获得的文件名新建相同的目录,谢谢
作者: cmd1152 时间: 2021-8-15 10:31
- for /f %%i in ('dir /b') do (md %%i)
复制代码
作者: COSByVal 时间: 2021-8-15 10:41
回复 2# cmd1152
我试了一下,没有反应啊,麻烦再给看下,谢谢,
作者: newswan 时间: 2021-8-15 10:52
- for /f %%i in ('dir /b') do (md "%%~ni")
复制代码
作者: COSByVal 时间: 2021-8-15 11:03
回复 4# newswan
太感谢了,成功了,请问如何把批处理文件自身这个文件名建的文件夹删除了,?
作者: newswan 时间: 2021-8-15 11:06
- for /f %%i in ('dir /b') do (
- if "%%~ni" NEQ "%~n0" md "%%~ni"
- )
复制代码
作者: COSByVal 时间: 2021-8-15 11:23
回复 6# newswan
大神,麻烦再问一下,如果按照源文件夹下的文件名的前N个字符(4个汉字6个数字)新建目录,再将这个目录下的文件按照前N个字符(4个汉字6个数字)分别拷贝到相应的目录下,该怎么做啊,谢谢!(源目录下的文件是“项目名称”+“年份”+“月份” 的形式命名的,我想把相同项目、相同年份的文件放到同一个文件夹内,)
作者: newswan 时间: 2021-8-15 11:38
- setlocal enableDelayedExpansion
-
- for /f %%i in ('dir /b') do (
- if "%%~ni" NEQ "%~n0" (
- set n=%%~ni
- set n=!n:~0,10!
- if not exist "!n!" mk !n!
- move "%%i" "!n!"
- )
- )
复制代码
作者: cmd1152 时间: 2021-8-15 11:39
回复 5# COSByVal - for /f %%i in ('dir /b') do (md %%i)
- rd %~0
复制代码
作者: COSByVal 时间: 2021-8-15 14:39
回复 9# cmd1152
for /f %%i in ('dir /b') do (
if "%%~ni" NEQ "%~n0" (
set n=%%~ni
set n=!n:~0,10!
if not exist "!n!" mk !n!
move "%%i" "!n!"
)
)
for /f %%i in ('dir /b') do (md %%i)
rd %~0
这两段我放在一个bat文件中,运行后,目录建出来了,但是文件没有拷贝进去,麻烦老师再给看一下,谢谢!
作者: Batcher 时间: 2021-8-15 20:59
回复 10# COSByVal
请参考Q-01观察一下哪行代码在报错以及详细的报错信息:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
作者: qixiaobin0715 时间: 2021-8-16 08:14
本帖最后由 qixiaobin0715 于 2021-8-16 08:26 编辑
回复 10# COSByVal
1.dir/b不仅会查找文件,还会显示文件夹,所以最好增加/a-d参数,这样就只会显示文件。
2.楼主最好提供文件扩展名,会省去不必要的判断语句。- @echo off
- setlocal enabledelayedexpansion
- for /f "delims=" %%a in ('dir /b /a-d *pdf *.jpg') do (
- set "str=%%a"
- set "str=!str:~,10!"
- if not exist !str! md !str!
- move "%%a" "!str!\"
- )
- pause
复制代码
作者: COSByVal 时间: 2021-8-16 08:19
回复 12# qixiaobin0715
扩展名是.pdf或者.jpg,谢谢!
作者: COSByVal 时间: 2021-8-16 08:23
回复 12# qixiaobin0715
目录建了,外面的文件也删除了,但是新建的文件夹内是空的,
作者: COSByVal 时间: 2021-8-16 09:52
回复 12# qixiaobin0715
弄好了,大神,谢谢!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |