标题: 20元求批处理ksc文件名 [打印本页]
作者: sange1963 时间: 2016-6-18 07:04 标题: 20元求批处理ksc文件名
karaoke := CreateKaraokeObject;
karaoke.internalnumber :=1 ;
karaoke.rows := 2;
karaoke := CreateKaraokeObject;
karaoke.clear;
// 本文件自动生成于 礼光KSC批量生成工具 By QQ:786151 5
// QQ:7861515 Mail:putinit@163.com 旺旺:Putinit
// Http://www.7 861515.cn Http://Shop33706607.Taobao.com
// 歌曲附加信息(便于检索)
karaoke.tag('歌名', '2011年12月DJ串烧2');
karaoke.tag('缩写', 'ELYYNYEYDJCSE');
karaoke.tag('歌手', '佚名');
karaoke.tag('字数', '13');
karaoke.tag('语种', '国语');
karaoke.tag('歌类', '其它');
karaoke.tag('电影', 'false');
karaoke.tag('风格', '流行');
karaoke.tag('流行', 'true');
karaoke.tag('音量', '70');
karaoke.tag('声道', '21');
karaoke.tag('FMP声道', '32');
karaoke.tag('语音', '0');
karaoke.tag('介质', 'true');
karaoke.tag('时间', '2016-06-18');
karaoke.tag('歌星拼音', 'YM');
karaoke.mtvmode :=true;
karaoke.videofilename := '';
karaoke.audiofilename := '*.wav';
karaoke.XSDVideoMode := 4;
karaoke.CommonVideo := '2011年12月DJ串烧2(欣赏版).mpg';
求高手:1、把这段(// 本文件自动生成于 礼光KSC批量生成工具 By QQ:786151 5
// QQ:7861515 Mail:putinit@163.com 旺旺:Putinit
// Http://www.7 861515.cn Http://Shop33706607.Taobao.com)从ksc文件里删除
2、就是:例如这个ksc文件的文件名为20002361,
需要把:karaoke.internalnumber :=1 ;中那个(1)改为这个20002361ksc文件名
karaoke.CommonVideo := '2011年12月DJ串烧2(欣赏版).mpg'; 中那个(2011年12月DJ串烧2(欣赏版))改为这个20002361ksc文件名
作者: pcl_test 时间: 2016-6-18 13:29
本帖最后由 pcl_test 于 2016-6-18 19:56 编辑
第三方路过- set "ksc=20002361.ksc"
- rem set "tksc=%ksc:~,-4%"
- for /f "delims=" %%a in ("%ksc%") do set "name=%%~na"
- sed -i "/^[ \t]*\/\//d;s/\(karaoke.CommonVideo :=\).*/\1'%name%';/;s/\(karaoke.internalnumber :=\).*/\1%name%;/" "%ksc%"
- pause
复制代码
作者: sange1963 时间: 2016-6-18 14:06
回复 2# pcl_test
老师您好,您给我的这个批处理文件处理不了,谢谢
作者: 小程936 时间: 2016-6-18 19:46
本帖最后由 小程936 于 2016-6-18 19:49 编辑
- @echo off&title 文件处理【小程936 QQ1781047213】
- echo 直接拖拽文件夹到本文件上方即可使用。
- echo 20元求批处理ksc文件名 @sange1963
- set ttt=%1
- set tt=%2
- if not DEFINED tt Setlocal enabledelayedexpansion
- if not DEFINED ttt goto 7
- (cd /d %1)||(echo cd-目录不存在&pause>nul&exit)
- set /a ab=-2,ad=-1
- :1
- echo 处理中……
- (for /f "delims=" %%i in ('dir /b /a-d /s *.ksc') do if not "%%i"=="" (set xn=%%~ni)&call :2 ) >nul 2>&1
- echo 批量修改完成。&start "" %ttt%
- pause>nul&exit
- :2
- for /f "delims=" %%z in (%xn%.ksc) do (set az=%%z)&call :小程936
- (del %xn.ksc%)&ren %xn%.1 %xn%.ksc
- goto :eof
- :小程936
- for /f "delims==" %%a in ("%az%") do (set aa=%%a)
- for /f "tokens=3 delims=." %%a in ("%az%") do (set aaa=%%a)
- >>%xn%.1 (if "%aa:~,2%" == "//" goto :eof
- if "%aa%" == "karaoke.internalnumber :" (echo+karaoke.internalnumber :=%xn%;)&goto :eof
- if "%aa%" == "karaoke.CommonVideo :" (echo+karaoke.CommonVideo :='%xn%.%aaa%)&goto :eof
- (echo+%az%)&goto :eof)
- goto :eof
- :7
- set /p ttt=
- if not DEFINED ttt goto 7
- call %0 %ttt% 1
- exit
复制代码
作者: 再世情緣 时间: 2016-6-18 20:37
- @echo off &color 0a &setlocal enabledelayedexpansion
- pushd "%cd%"
- for /f "delims=" %%A in ('dir /s /b /a -d "*.ksc" 2^>nul') do (
- set "nm=%%~fA" & set "kscnm=%%~nA"
- cd.>"!nm!.txt"
- for /f "usebackq eol=/ tokens=1,2* delims=:" %%a in ("%%~fA") do (
- if "#%%a#" EQU "#karaoke.internalnumber #" (
- (echo.%%a:=!kscnm! ;)>>"!nm!.txt"
- ) else (
- if "#%%a#" EQU "#karaoke.CommonVideo #" (
- (echo.%%a:='!kscnm!';)>>"!nm!.txt"
- ) else (
- if "%%b" EQU "" ((echo.%%a)>>"!nm!.txt") else ((echo.%%a:%%b)>>"!nm!.txt")
- )
- )
- )
- move /y "!nm!.txt" "!nm!" >nul 2>nul
- )
- pause.
复制代码
放在ksc文件夹里运行即可
作者: sange1963 时间: 2016-6-18 23:11
再世情緣老师,您的这个批文件可以转换成数字歌名,但是-----{// 歌曲附加信息(便于检索)}必须要,不然这个文件就不能用了,非常感谢!
作者: sange1963 时间: 2016-6-18 23:30
本帖最后由 sange1963 于 2016-6-18 23:37 编辑
karaoke := CreateKaraokeObject;
karaoke.internalnumber :=20006615 ;
karaoke.rows := 2;
karaoke := CreateKaraokeObject;
karaoke.clear;
// 歌曲附加信息(便于检索)
karaoke.tag('歌名', '给我一个理由忘记');
karaoke.tag('缩写', 'GWYGLYWJ');
karaoke.tag('歌手', 'A Lin 陈嘉欣 李林涛 黄菁');
karaoke.tag('字数', '8');
karaoke.tag('语种', '国语');
karaoke.tag('歌类', '其它');
karaoke.tag('电影', 'false');
karaoke.tag('风格', '流行');
karaoke.tag('流行', 'true');
karaoke.tag('音量', '70');
karaoke.tag('声道', '12');
karaoke.tag('FMP声道', '32');
karaoke.tag('语音', '0');
karaoke.tag('介质', 'true');
karaoke.tag('时间', '2016-06-18');
karaoke.tag('歌星拼音', 'ALINCJXLLTHJ');
karaoke.mtvmode :=true;
karaoke.videofilename := '';
karaoke.audiofilename := '*.wav';
karaoke.XSDVideoMode := 4;
karaoke.CommonVideo :='20006615';
需要改为这样,谢谢了
作者: WHY 时间: 2016-6-19 01:02
- @if (0)==(0) echo off
- dir /b *.ksc | cscript //nologo //e:jscript "%~f0"
- pause & exit
- @end
-
- var getContent = function(strFile){
- var n = strFile.replace(/(.+)\..+$/, '$1');
- var objFile = fso.OpenTextFile(strFile, 1);
- var s = objFile.ReadAll().replace(/^\/\/(?!\s*歌曲附加信息).*\n/mg, '');
- s = s.replace(/^(karaoke\.internalnumber *: *=)[^\r\n]*/im, '$1' + n + ';');
- s = s.replace(/^(karaoke\.CommonVideo *: *=)[^\r\n]*/im, "$1'" + n + "';");
- objFile.Close();
- fso.OpenTextFile(strFile, 2).Write(s);
- }
-
- var fso = new ActiveXObject('Scripting.FileSystemObject');
- while(!WSH.StdIn.AtEndOfStream) { getContent( WSH.StdIn.ReadLine()); }
复制代码
作者: 再世情緣 时间: 2016-6-19 02:27
- @echo off &color 0a &setlocal enabledelayedexpansion
- pushd "%cd%"
- for /f "delims=" %%A in ('dir /s /b /a -d "*.ksc" 2^>nul') do (
- set "nm=%%~fA" & set "kscnm=%%~nA"
- cd.>"!nm!.txt"
- for /f "usebackq tokens=1,2* delims=:" %%a in ("%%~fA") do (
- set "ln0=%%a:%%b"
- if "!ln0:~-1!" EQU ":" (set "ln0=%%a")
- if "!ln0:~,2!" EQU "//" (
- echo.!ln0! |findstr "歌曲附加信息(便于检索)" >nul &&(echo.!ln0!)>>"!nm!.txt"
- ) else (
- if "#%%a#" EQU "#karaoke.internalnumber #" (
- (echo.%%a:=!kscnm! ;)>>"!nm!.txt"
- ) else (
- if "#%%a#" EQU "#karaoke.CommonVideo #" (
- (echo.%%a:='!kscnm!';)>>"!nm!.txt"
- ) else (
- (echo.!ln0!)>>"!nm!.txt"
- )
- )
- )
- )
- move /y "!nm!.txt" "!nm!" >nul 2>nul
- )
- pause.
复制代码
作者: WHY 时间: 2016-6-19 19:34
- @echo off & setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /b *.ksc') do (
- (for /f "delims=" %%j in ('findstr /n .* "%%i"') do (
- set "s=%%j"
- set "s=!s:*:=!"
- for /f "tokens=1-3" %%i in ("!s!#") do set "s1=%%i%%j%%k"
- if /i "!s1:~0,24!" == "karaoke.internalnumber:=" (
- echo;karaoke.internalnumber :=%%~ni;
- ) else if /i "!s1:~0,21!" == "karaoke.CommonVideo:=" (
- echo;karaoke.CommonVideo :='%%~ni';
- ) else if "!s1:~0,8!" == "//歌曲附加信息" (
- echo;!s!
- ) else if not "!s1:~0,2!" == "//" echo;!s!
- ))>~tmp.$
- move ~tmp.$ "%%i"
- )
- pause
复制代码
作者: WHY 时间: 2016-6-20 18:28
2016-6-19
sange1963 2016-6-19 17:39
您好,我是在批处理论坛里求改ksc文件的,麻烦你加我QQ358502338
WHY 2016-6-19 19:31
我不用QQ,有问题可以站内短信联系,或直接在帖子里回复
2016-6-20
sange1963 2016-6-20 17:22
老师,你发的那个批处理文件可以删除那个广告信息也可以转换为数字,但是把最后一排的mpg除掉了,最后排应该这样karaoke.CommonVideo := '200001234.mpg';还有等于号后面是有空格的。麻烦你加我QQ嘛,我把原始文件发给你看看,谢谢您了。
我不用QQ,也从未想过要安装QQ,可以把附件发到这里
作者: sange1963 时间: 2016-6-20 22:20
回复 11# WHY
哦,知道了
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |