标题: [文本处理] 批处理怎样把关键词文件复制到包含关键词的文件夹? [打印本页]
作者: 小白来了 时间: 2023-10-29 17:04 标题: 批处理怎样把关键词文件复制到包含关键词的文件夹?
桌面有多个文件,名称是姓名命令的。
d盘有多个文件夹,也是按照那些名称+备注命名的。
怎样用批处理,把桌面不同的文件,复制到d盘同名文件夹。
注意:文件名和文件夹名称只是包含了关键词~
作者: 77七 时间: 2023-10-29 17:41
- @echo off
- rem 批处理保存为ansi编码格式
- cd /d "%~dp0"
- for %%a in (*) do (
- for /d %%d in ("d:\*%%~na*") do (
- copy "%%a" "%%d"
- )
- )
- pause
复制代码
批处理放在桌面执行
作者: 小白来了 时间: 2023-10-29 17:53
回复 2# 77七
谢谢大佬,每次我都是手动给这些文件添加上名字,有什么办法能给这些文件前面快速加上指定的名称吗?每个名字都不同,写进list.txt里面,然后一键加上可以吗?
例如把文件A前面加上:张三-,形成张三-文件A,文件B也是加上李四-,等等。
不知道怎样定义,怎样加……
作者: 77七 时间: 2023-10-29 18:09
回复 3# 小白来了
你前面的帖子,不也是这个问题吗?
假如有一只黑猫、一只白猫,需要取名字,是白猫叫小白,黑猫叫小黑,还是只是不管叫什么,只是取个名字区分它们,白猫也可以叫小黑?还是它们根据高矮排队,第一个就叫小白,第二个叫小黑?
作者: 小白来了 时间: 2023-10-29 18:14
回复 4# 77七
根据高矮排序,我把他们名字写到txt,然后给他们加上名字。
之前老大写的名字加上了,结果发现是随机的~
作者: 77七 时间: 2023-10-29 18:18
回复 5# 小白来了
命令行输入 dir /?
- /O 用分类顺序列出文件。
- 排列顺序 N 按名称(字母顺序) S 按大小(从小到大)
- E 按扩展名(字母顺序) D 按日期/时间(从先到后)
- G 组目录优先 - 反转顺序的前缀
复制代码
你看下你需要哪种顺序
比如 dir /on dir /o-n
作者: 小白来了 时间: 2023-10-29 18:22
回复 6# 77七
按名称字母排序吧,打开文件夹里面 是按照名称字母排序的,从A到Z这样的。谢谢大哥!
作者: 77七 时间: 2023-10-29 18:39
本帖最后由 77七 于 2023-10-29 18:44 编辑
回复 7# 小白来了
- @echo off
- rem 批处理保存为ansi编码格式
- cd /d "%~dp0"
- setlocal enabledelayedexpansion
- (for /f "delims=" %%i in ('dir /b /a-d /on ^|find /v "%~nx0" ^|find /v "list.txt"') do (
- set /p str=
- ren "%%i" "!str!-%%i"
- ))<list.txt
- pause
复制代码
作者: 小白来了 时间: 2023-10-29 18:56
回复 8# 77七
测试成功,感谢老大,文件夹名称排序-递减。成了!谢谢您
作者: 小白来了 时间: 2023-10-29 19:44
回复 2# 77七
大哥还在不,要复制的文件名是0-开头的话,要怎样改呢?测试老半天搞不定、、去掉0-,只写姓名是可以复制过去的。
文件名带0-是为了复制过去 排序靠前...
作者: 77七 时间: 2023-10-29 20:12
回复 10# 小白来了
- @echo off
- rem 批处理保存为ansi编码格式
- cd /d "%~dp0"
- rem 复制数字开头
- for /f "tokens=1* delims=-" %%a in ('dir /b /a-d ^|findstr /rbc:"[0-9][0-9]*-"') do (
- for /f "delims=" %%c in ("%%b") do (
- for /d %%d in ("d:\*%%~nb*") do (
- copy "%%a-%%b" "%%d"
- )
- )
- )
- rem 复制非数字开头
- for /f "delims=" %%a in ('dir /b /a-d ^|findstr /rbvc:"[0-9][0-9]*-"') do (
- for /d %%d in ("d:\*%%~na*") do (
- copy "%%a" "%%d"
- )
- )
- pause
复制代码
作者: 小白来了 时间: 2023-10-29 20:26
回复 11# 77七
大哥,你简直太6了!大哥,我祝福您生意兴隆通四海;大哥,我祝福您日进斗金达三江;大哥,我祝福您财源滚滚来如潮。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |