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


    大佬,为啥我换了一台电脑就无法使用了呢?使用同样的方法,这台电脑就没有任何反应了

TOP

本帖最后由 wanghan519 于 2023-8-17 04:13 编辑

回复 16# a475012621


    可能是win7里的powershell版本低,不支持一些参数,好像-File就不行,需要稍微改一下,或者下载压缩包的pwsh7版本

或者用busybox-w32,这个好处是可以把sh脚本打包进exe,单独一个600K的exe,放到哪都能用,代码如下,需要小心测试
  1. cd 目标文件夹
  2. find . -type f -exec md5sum {} \; | tac | awk '{m=$1;$1="";sub("^ *","");n=$0;"dirname \""n"\"" | getline;if(++d[$0"/"m]>1){system("rm \""n"\"")}}'
复制代码
1

评分人数

TOP

回复 17# wanghan519


    好的,感谢了,我两个系统都是win10的,版本应该也是一样的,不理解为啥有一台电脑运行不上,转成exe当然好,但是我搜了一下busybox安装,有点搞不懂,谢谢啦,我再琢磨琢磨

TOP

回复 18# a475012621


    powershell不能运行需要看一下报错是什么。。。
busybox-w32不需要安装,下载个busybox.exe,命令行运行busybox.exe ash后执行上面那串代码就可以,如果要打包需要安装mingw环境,然后把上面那段代码放到文本里,存入项目目录下embed文件夹,再make,出来的busybox.exe就包含那段脚本,可以改名成那个脚本名.exe直接运行,也可以当成busybox.exe来用

TOP

回复 19# wanghan519


    好嘛,我去试试,powershell运行的话,没有提示错误,但是代码运行了就是没得任何反应,其他没有提示

TOP

本帖最后由 a475012621 于 2023-8-19 10:44 编辑

回复 19# wanghan519


    https://postimg.cc/B8t8H0Bp我改变路径它说找不到

TOP

回复 18# a475012621


请在你的两位Win10的PowerShell命令行里分别执行命令:
  1. $PSVersionTable
复制代码
  1. winver
复制代码
截图发出来看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 21# a475012621


    这图中是试用busybox ash,这是个Linux shell,要区分大小写,所以大写的CD找不到命令,cd 路径,路径也要注意大小写

TOP

回复 22# Batcher


    https://postimg.cc/GHjYwr33

TOP

回复 22# Batcher


    https://postimg.cc/1nx4VYRY

TOP

回复 22# Batcher


   

TOP

回复 26# a475012621


    运行了,它没有报错,但是文件并没有做更改

TOP

回复 23# wanghan519


    好的,我试试

TOP

回复 27# a475012621


    可以上传两个没被删除的相同的图片到网盘吗,可能md5sum有些不同

TOP

本帖最后由 77七 于 2023-8-19 12:34 编辑

也可以使用第三方工具获取MD5
  1. http://bcn.bathome.net/tool/fourmilab,2.0/md5.exe
复制代码
  1. @echo off
  2. for /r /d %%d in (*) do (
  3. pushd "%%d"
  4. setlocal
  5. for /f "tokens=1*" %%a in ('"%~dp0md5.exe" *.jpg') do (
  6. if defined _"%%a" (
  7. del "%%b"
  8. ) else (
  9. set _"%%a"=1
  10. )
  11. )
  12. endlocal
  13. popd
  14. )
  15. pause
复制代码
bat小白,请多指教!谢谢!

TOP

返回列表