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


    谢谢

TOP

本帖最后由 missle3000 于 2018-10-21 14:30 编辑

回复 15# WHY


您好,上次您帮我做的批处理程序非常好用,现在需要稍微修改一下
要求1.在每个生成的M3U文档里面的内容最前面添加一行,内容是:#EXTM3U  
要求2.在满足(要求1)的基础上,在该总目录下多生成一个总的M3U文件,就是对该目录下的所有文件夹里的内容做一个汇总
要求3.生成的M3U文档全部放在根目录下,而不是放在每个文件夹里面,M3U的要求参考(要求1)和(要求2)

请参考3个要求做成三个独立的批处理程序

麻烦您了,做好了还会酬谢您

TOP

本帖最后由 WHY 于 2018-10-22 10:52 编辑

回复 17# missle3000


要求1:
  1. @echo off
  2. PowerShell "$a=,'#EXTM3U'; dir . -Include *.flac, *.wav, *.wma, *.mp3 -Recurse|sort Name|group DirectoryName|%%{sc -Literal ($_.Name -replace '[^\\]+$','$0\$0.m3u') -Value ($a+($_.Group|select -Exp Name)) -Enc UTF8}"
  3. pause
复制代码
要求2:
  1. @echo off
  2. PowerShell "$a=,'#EXTM3U';$L='%~dp0'.Length;dir . -Include *.flac, *.wav, *.wma, *.mp3 -Recurse|sort Name|group DirectoryName|%%{$b+=$_.Group|%%{$_.FullName.SubString($L)};sc -Literal ($_.Name -replace '[^\\]+$','$0\$0.m3u') -Value ($a+($_.Group|%%{$_.Name})) -Enc UTF8};sc '汇总.m3u' -Value ($a+$b) -Enc UTF8"
  3. pause
复制代码
要求3,不考虑文件重名:
  1. @echo off
  2. PowerShell "$a=,'#EXTM3U';$L='%~dp0'.Length;dir . -Include *.flac, *.wav, *.wma, *.mp3 -Recurse|sort Name|group DirectoryName|%%{$v=$_.Group|%%{$_.FullName.SubString($L)};sc -Literal (($_.Name -replace '.*\\')+'.m3u') -Value ($a+$v) -Enc UTF8; $b+=$v};sc '汇总.m3u' -Value ($a+$b) -Enc UTF8"
  3. pause
复制代码

TOP

回复 18# WHY

您好 可能我没说清楚,还有点问题
要求一.生成的M3U文件里面的文件名不是按照文件名来排序的
要求二.汇总这个M3U文件里面的文件名没有带路径,比如文件夹:2018年 这个文件夹里的第一个文件名称是:01.苏州.jpg,那么汇总M3U 里体现的名字应该是:2018\01.苏州.jpg
要求三 跟要求二一样,只要m3u不在该文件夹里面,放在文件夹外面了就要带路径

麻烦您有时间再调整一下

TOP

回复 19# missle3000


    已修改

TOP

回复 20# WHY


   您好。要求一可以了, 要求二和要求三的 汇总M3U里的文件夹顺序没有按照文件名排序

TOP

请把你的问题一次性说清楚,真是麻烦
sort Name 改成 sort FullName

TOP

回复 22# WHY


  可以了,不好意思,给您添麻烦了。
麻烦私聊我您的支付宝账号

TOP

回复 23# missle3000


    好的,支付宝账号发短信给你了。

TOP

返回列表