标题: [文件操作] BAT求助,在文件夹内有JPG文件多个和一个空文件夹,想把里边的JPG文件放入空文件夹内 [打印本页]
作者: lxch5434 时间: 2017-2-18 19:53 标题: BAT求助,在文件夹内有JPG文件多个和一个空文件夹,想把里边的JPG文件放入空文件夹内
BAT求助,在文件夹内有JPG文件多个和一个空文件夹,想把里边的JPG文件放入空文件夹内,这样的文件夹有上千个。感谢各位指点
作者: lxch5434 时间: 2017-2-18 20:45
有没有大神帮忙下 不胜感激
作者: techon 时间: 2017-2-18 21:18
问题不够具体,描述也没有例子
大概思路:
1、for遍历包含jpg文件的目录;
2、move移动jpg文件到目标目录
需要考虑的是如何获取目标目录
作者: taofan712 时间: 2017-2-18 21:34
回复 1# lxch5434
这一千多个文件夹是否在同一个目录?
这些文件夹下是否除了jpg图片之外就只有唯一一个空文件夹?
作者: liero1982 时间: 2017-2-19 19:21
假设你的jpg所在目录为A001~A100(他们内有若干jpg文件,和唯一的空文件夹),他们放在D:\ds下。
在D:\ds目录下编写如下bat并运行
FOR /F "delims==" %%i IN ('dir /b *.') DO (
cd "%%i"
dir /b *. > empdir.txt
set /p d= < empdir.txt
move *.jpg %d%\
del empdir.txt
cd ..
)
作者: GNU 时间: 2017-2-20 20:56
回复 5# liero1982
用临时文件可能效率比较低,用 for /f + dir 获取文件夹名称估计能快点。
作者: lxch5434 时间: 2017-2-20 22:21
这是别人给写的 就是要这个功能6楼朋友的没有试
@echo off&setlocal enabledelayedexpansion
cd /d "%~dp0"
for /f "delims=" %%a in ('dir /b/ad *') do (
cd /d "%~dp0%%a"
for /f "delims=" %%b in ('dir /b/ad *') do set "_folder=%%b"
move /y *.jpg "%~dp0%%a\!_folder!"
cd /d "%~dp0"
)
exit
我不懂代码 各位赐教
作者: lxch5434 时间: 2017-2-20 22:24
回复 4# taofan712
都在一个目录,文件夹有一个,只有jpg,做地籍调查一个测区万把个文件夹 代码朋友写的 我外行
作者: lxch5434 时间: 2017-2-20 22:28
回复 5# liero1982
试试你的看看可以达到一样效果不
作者: lxch5434 时间: 2017-2-20 22:29
回复 5# liero1982
试试你的看可以达到同样效果不
作者: GNU 时间: 2017-2-20 22:43
回复 7# lxch5434
dir /b/ad * 这里的星号可以省略
作者: taofan712 时间: 2017-2-21 10:40
回复 8# lxch5434 - @echo off
- for /f "delims=" %%a in ('dir /ad /b') do (
- pushd "%%~a"
- for /f "delims=" %%b in ('dir /ad /b') do (
- move /y *.jpg "%%~b\"
- )
- popd
- )
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |