[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 WHY 于 2018-5-3 20:44 编辑
  1. @echo off
  2. for /r %%i in (*.flac) do (
  3.     for %%j in ("%%i\..") do echo;%%~nxi >> "%%~dpi%%~nxj.m3u"
  4. )
  5. pause
复制代码

TOP

本帖最后由 WHY 于 2018-5-4 09:46 编辑
  1. @echo off
  2. PowerShell -c "dir . *.flac -Recurse|group DirectoryName|%%{sc -Literal ($_.Name -replace '[^\\]+$','$0\$0.m3u') -Value ($_.Group|select -Exp Name) -Enc UTF8}"
  3. pause
复制代码

TOP

回复 6# missle3000


    已改,Win7下可以用了

TOP

本帖最后由 WHY 于 2018-5-4 10:44 编辑

回复 8# missle3000


    那敢情好,支付宝账号短信给你。

遍历多种格式文件:
  1. PowerShell -c "dir . -Include *.flac, *.wav, *.wma, *.mp3 -Recurse|group DirectoryName|%%{sc -Literal ($_.Name -replace '[^\\]+$','$0\$0.m3u') -Value ($_.Group|select -Exp Name) -Enc UTF8}"
复制代码

TOP

回复 11# missle3000


    PowerShell 遍历文件默认就是按文件名排序的,不知道是不是你的系统问题。
这样应该可以:
  1. PowerShell -c "dir . -Include *.flac, *.wav, *.wma, *.mp3 -Recurse|sort Name|group DirectoryName|%%{sc -Literal ($_.Name -replace '[^\\]+$','$0\$0.m3u') -Value ($_.Group|select -Exp Name) -Enc UTF8}"
复制代码

TOP

回复 14# missle3000


    12楼后面的 -Enc UTF8 删掉

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

回复 19# missle3000


    已修改

TOP

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

TOP

回复 23# missle3000


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

TOP

返回列表