批处理:搜索并移动文件到指定位置

1.根据文本中的记录(一行一件)在批处理所在目录下搜索文件2.将搜索到的文件剪切到指定的文件夹,如:D:\123(注:可能会存在跨区的问题)3.执行完后生成日志,显示哪些... 1.根据文本中的记录(一行一件)在批处理所在目录下搜索文件
2.将搜索到的文件剪切到指定的文件夹,如:D:\123(注:可能会存在跨区的问题)
3.执行完后生成日志,显示哪些移动成功,哪些移动失败
4.如果出现重名文件则根据移动的先后顺序在文件名后面加上-2 -3 .....
求具体代码
文件格式为pdf 和 tiff
展开
 我来答
橼鈊
2018-08-27 · 超过13用户采纳过TA的回答
知道答主
回答量:32
采纳率:90%
帮助的人:6万
展开全部
@echo off
Setlocal enabledelayedexpansion
set /p "namea=请输入记录文件名的文本绝对路径:"
if not exist %namea% (
echo 不存在此文件
pause
exit
) else (
set /p "nameb=请输入你要移动到的文件夹:"
for /f "delims=" %%a in ('findstr ".pdf .tiff" %namea%') do (
set p=%%a
echo copy /y "%%a" "!nameb!\!p!">>日志.txt
copy /y "%%a" "!nameb!\!p!">>日志.txt
))
start 日志.txt
pause
请将此程序保存为bat并放在pdf 和 tiff文件格式的目录下
如果我哪里理解错了请告诉我,我再修改 谢谢
更多追问追答
追问
有点问题,麻烦帮忙修改一下
1.文本名:列表.txt 跟批处理是放在一起的(也就是跟需要移动的文件的主目录里)
2.搜索范围是脚本所在目录下的所有子文件夹(因为主目录下有三层 也有四层 五层)
3.搜索到指定文件后 将其移动到指定路径(注意是移动 不是复制,另外源路径和最终保存路径会存在跨区情况)
4.最终路径就不要手输了,由我自行在代码里改就好了
谢谢您!麻烦帮忙改下
给你一个参考
DoramiHe
2018-08-26 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59541
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
改成 如下:{ 就是添加了一句 : else ( echo "%%i">>b.txt) } if /i "%%~nxb" equ "%%i" ( set /a n+=1 echo 找到"%%~nxb"文件 echo "%%~dpb%%~nxb">>a.txt copy "%%~dpb%%~nxb" "D:\finallists" /y ) else ( echo "%%i">>b.txt)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
藤原子大雄
2018-08-27 · TA获得超过7197个赞
知道大有可为答主
回答量:6977
采纳率:82%
帮助的人:1752万
展开全部
@echo off for /f %%i in (file.txt) do ( if exist e:\2011\%%i (echo d|xcopy e:\2011\%%i\*.* E:\ok、、、、/e /y ) else echo %%i )
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式