Board logo

标题: [文件操作] 批处理如何依文件名中汉字偏旁,为图片分类? [打印本页]

作者: ykhq2021    时间: 2021-7-18 08:44     标题: 批处理如何依文件名中汉字偏旁,为图片分类?



当前文件夹内有近2000张图片,

想用批处理实现  按文件名中第1个汉字的偏旁对图片进行分类

即 文件名中 第1个汉字偏旁相同的放在一个文件内,独体字全部放在一个文件夹内。


全部图片在百度云


链接:https://pan.baidu.com/s/10u-RzqzrH4_IfIMhZ8ZEIg
提取码:otak
--来自百度网盘超级会员V8的分享
作者: newswan    时间: 2021-7-18 12:56

先,需要一个字典,汉字-偏旁
作者: cmd1152    时间: 2021-7-18 14:08

本帖最后由 cmd1152 于 2021-7-18 15:06 编辑

试试这个,放到文件夹里运行,分类有点慢
https://pan.baidu.com/s/1i2TLzImxxyt_Sp2BOTx4HQ
提取码:1152
作者: cmd1152    时间: 2021-7-18 15:41

分类很慢,我还是帮你手动排吧
作者: cmd1152    时间: 2021-7-18 15:57

只能帮你到这了...
链接:https://pan.baidu.com/s/1HV-LZascYrVZ_YSrvFh9UQ
提取码:1152
作者: newswan    时间: 2021-7-18 16:31

本帖最后由 newswan 于 2021-7-18 16:32 编辑

这个试试
python
https://github.com/wangchuan2008888/cn-radical
作者: newswan    时间: 2021-7-18 17:59

本帖最后由 newswan 于 2021-7-18 18:03 编辑

百度文库 常用汉字偏旁归类表
附件上传失败
链接: https://pan.baidu.com/s/1Ajz95Lngu3lNDoVm3vB8Vw 提取码: uz6y

各种文库,文档中心,收费太没道德。一句话:正版的受害者
作者: newswan    时间: 2021-7-18 19:20

  1. $sour = "颜勤礼碑单字版"
  2. $destDictory = ".\a"
  3. $rulefile = "汉字偏旁-rule.txt"
  4. $rule = Get-Content -Encoding UTF8 -Path $rulefile
  5. Get-ChildItem -Path $sour | ForEach-Object {
  6.     $char = $_.basename -replace "\d",""
  7.     $name =$_.fullname
  8.     $dest = $rule -match ("\t.*" + $char) -replace "\t.*",""
  9.     $dest | foreach-object {
  10.         $dd = $destDictory + "\" + $_
  11.         if (-not (test-path $dd))
  12.         {
  13.             New-Item -ItemType "directory" $dd
  14.         }
  15.         copy-item $name $dd
  16.     }
  17.     pause
  18. }
复制代码

作者: ykhq2021    时间: 2021-7-19 08:18

回复 5# cmd1152

辛苦,谢谢。再慢也比手动好
作者: ykhq2021    时间: 2021-7-19 08:21

newswan 发表于 2021-7-18 19:20





  辛苦 谢谢
我下载了  汉字偏旁-rule  把您帮我写的代码保存成了bat
我尝试把这2个文件放在可能的位置 运行 BAT 都是一闪而过
没有结果  

求指教
作者: ykhq2021    时间: 2021-7-19 08:27

回复 3# cmd1152


运行后发现,不是处理了全部文件 能帮我把找码改成移动文件吗 最后不能用代码文类 图片留下 把能分的移动到相关文件夹。谢谢
=============================


    邝庄应座廛库庠席庳廊廓廨庀庑庖庇庞庵店唐庙庆庹康麻床庚庾庋废度
D:0001唐.jpg
复制了 1 个文件
收攻攸改孜败牧放政故畋敖致敌效敉赦教救敕敏敛敝敢散敬敞敦敫数敷辙
D:0002故.jpg
复制了 1 个文件
鼎瞿矍盲眚省着眷睿看盾眉眢瞢督瞀瞽瞥相眍眶眭睦睡睢瞌睚瞠瞳眸瞵瞩
D:0005省.jpg
复制了 1 个文件
处冬条务各备麦复夏夔
D:0009夔.jpg
复制了 1 个文件
一二三工土士廿五主立壬丘止卫互生女七亡亚且皿丑甘世里业韭山十卜卞卡干平千牛半丰巾中斤升年井开乍串革币弓车川州卅册甲申耳丹弗片爿聿事不之心必幺东乐虫斥厂产户石尸少乡严夕尹人八入个大犬义又叉火丈夫久尺失文父长爪瓜吏及央矢夹史更夷臾艮良禾木术本水未末米来永求朱农承果柬秉隶乘兼丁才寸于亍乎手了子孑孓矛牙成氐飞戈戋民我氏曳刁刀刃力办匆万方为乃亏丐乙匕儿兀几凡己已巳九丸乜也乞气巴电毛屯瓦龙口日曰目月四田由凹曲凸雨两白丙臼击出门内甩甫母毋垂重禺禹舟冉再
D:0010州.jpg
复制了 1 个文件
作者: Batcher    时间: 2021-7-19 09:05

回复 10# ykhq2021


执行.ps1脚本,请参考:
http://bbs.bathome.net/thread-31071-1-1.html
作者: cmd1152    时间: 2021-7-19 13:37

回复 11# ykhq2021


    加一个del就好
作者: cmd1152    时间: 2021-7-19 13:42

回复 10# ykhq2021


    这个是PowerShell代码...
作者: ykhq2021    时间: 2021-7-19 14:17

回复 13# cmd1152


    加在什么位置呀
作者: ykhq2021    时间: 2021-7-19 14:19

回复 14# cmd1152


    按12楼 老师的贴子 弄了好久 还没成 看不明白
作者: cmd1152    时间: 2021-7-19 14:39

回复 16# ykhq2021


    1、Windows 7 怎样执行 PowerShell 代码?

第一步:打开 CMD 命令行窗口,执行以下命令进入 PowerShell 提示符模式:
powershell

第二步:在 PowerShell 提示符下执行命令:
Set-ExecutionPolicy "RemoteSigned"
exit

第三步:把以下测试代码保存为 C:\test.ps1
$A = "bbs."
$B = "bathome."
$C = "net"
$A + $B + $C

第四步:在 CMD 命令行窗口里面执行命令:
powershell -f "C:\test.ps1"

2、Windows 7 怎样在 CMD 命令行窗口里面执行 PowerShell 命令?

使用 powershell -c 命令,比如:
powershell -c "Get-Date"

3、Windows 7 怎样安装 PowerShell 3.0?

第一步:安装 .NET Framework 4.5 (dotNetFx45_Full_setup.exe)
http://go.microsoft.com/fwlink/?LinkID=242919

第二步:安装 Windows Management Framework 3.0
http://www.microsoft.com/en-us/download/details.aspx?id=34595

4、Windows 7 怎样安装 PowerShell 4.0?

第一步:安装 .NET Framework 4.5 (dotNetFx45_Full_setup.exe)
http://go.microsoft.com/fwlink/?LinkID=242919

第二步:安装 Windows Management Framework 4.0
http://www.microsoft.com/en-us/download/details.aspx?id=40855
作者: Batcher    时间: 2021-7-19 14:41

回复 16# ykhq2021


    什么操作系统?另外,请把报错信息发出来看看
作者: cmd1152    时间: 2021-7-19 14:42

回复 15# ykhq2021
加在copy的后面
作者: newswan    时间: 2021-7-19 18:54

回复 10# ykhq2021

powershell 嵌入 bat ,添加到第一行
  1. @powershell -c "Get-Content '%~0' | Select-Object -Skip 1 | Out-String | Invoke-Expression" & pause & exit
复制代码
一个汉字可以有多个偏旁,会把文件复制到每个偏旁里去
作者: ykhq2021    时间: 2021-7-20 17:02

非常感谢几位朋友的帮忙,终于弄完了,辛苦大家了。

感谢!感谢!
作者: newswan    时间: 2021-7-20 17:17

哈哈,顺便学习下书法。。。
作者: cmd1152    时间: 2021-7-21 00:07

回复 9# ykhq2021


    早安,手动好一点了
作者: cmd1152    时间: 2021-7-21 00:08

回复 18# Batcher


    他是问:看不懂怎么执行,早安!
作者: cmd1152    时间: 2021-7-21 00:08

回复 22# newswan


    早安,可以学书法?
作者: newswan    时间: 2021-7-21 11:34

回复 25# cmd1152


    欣赏,毕竟那么有名的东东
作者: cmd1152    时间: 2021-7-21 11:47

回复 26# newswan


    无语




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2