[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]bat 如何按关键字,移动相关文件到指定文件夹里面?

本帖最后由 ruoru376 于 2015-3-12 08:41 编辑

下面代码能实现这个功能,但是我想把关键字放在一个TXT文本里面(一行一个关键字),然后自动去匹配,只要包含一个关键字就移动相关文件呢?

set list=关键字
for %%a in (*%list%*) do move "%%a" 文件夹

谢谢各位了!

回复 13# ruoru376
问题得到解答以后在标题最前面注明[已解决]
http://www.bathome.net/thread-3473-1-1.html

TOP

回复 12# pcl_test
好了呵呵 ,就这样子!谢谢了!

TOP

本帖最后由 pcl_test 于 2015-3-11 14:33 编辑

回复 11# ruoru376
  1. @echo off
  2. for %%a in (*.txt) do (
  3. if "%%a" neq "关键字.txt" (findstr /rg:"关键字.txt" "%%a" >nul && echo move "%%a" "文件夹\")
  4. )
  5. pause
复制代码

TOP

回复 8# cobat

那就换一种说法吧,标记出含有“关键字.txt”(这个是存放关键字),的所有txt文本(搜索目录下所有txt文本是否存在“关键字.txt”的关键字,如果存在)。存在则,打印出文件名就可以了!以后我在慢慢思考。 谢谢了!

TOP

本帖最后由 ruoru376 于 2015-3-10 20:53 编辑

回复 8# cobat

刚才那个是含有”关键字“的文件名移动,如果改成txt文档里面含有“关键字”则移动(移动文件里面含有“关键字的,txt文档”),怎么做了。想了很久,怎么做也做不出来。哎,才学习bat有些困难!

TOP

回复 8# cobat

就是“关键字.txt”里面的关键字,字数不限的。

TOP

本帖最后由 cobat 于 2015-3-10 20:47 编辑

回复 4# ruoru376


理解不能,和1楼是什么区别?

TOP

回复 2# cobat
假如,改为搜索txt文本里面,如果含有关键字,则移动。怎么做呢? 感觉有些麻烦

TOP

回复 2# cobat
效果不错!非常感谢!:victory:

TOP

回复 2# xxpinqz

谢谢!好像没有重复发帖吧!我查看一下,可能是网络原因,也不知道!

TOP

本帖最后由 xxpinqz 于 2015-3-10 19:47 编辑

文件夹和关键字的对应关系要说明

重复发帖了你。。。,有问题在原帖里跟进。。。。
初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

bat 如何按关键字,移动相关文件到指定文件夹里面?

本帖最后由 ruoru376 于 2015-3-10 19:55 编辑

下面代码能实现这个功能,但是我想把关键字放在一个TXT文本里面(一行一个关键字),然后自动去匹配,只要包含一个关键字就移动相关文件呢?

set list=关键字
for %%a in (*%list%*) do move "%%a" 文件夹

例如:
存放关键字文档为“关键字.txt”
内容为:
关键字1
关键字2
……
关键字N
——————
然后,根据上述文档“关键字”搜索当前目录下是否存在含有“关键字”的文件,如果含有“关键字”的文件,移动到“文件夹”;只要含有一个关键字,就自动移动!

谢谢各位了!

TOP

本帖最后由 cobat 于 2015-3-10 17:52 编辑
  1. @echo off
  2. (for /f "usebackq tokens=*" %%a in ("关键字.txt") do move "*%%a*" "文件夹")>nul 2>nul
  3. pause
复制代码

TOP

返回列表