0

我有以下批处理文件。

@if(@a==@b) @end
/* :: batch portion
@ECHO OFF
setlocal 
if exist "%~1" ( 
  cscript /nologo /e:jscript "%~f0" < "%~1"
 ) else ( 
  cscript /nologo /e:jscript "%~f0" 
 )
 exit /b 
:: JScript portion */ 
while (!WSH.StdIn.AtEndOfLine) {
 var line=WSH.StdIn.ReadLine();
 var st_token = line.split('\t');
WSH.Echo(st_token[i]);

它将令牌回显到控制台,然后我将其重定向到文件。是否可以有额外的回声来重定向到不同的文件?

是否可以为回显指定一个文件名,以便如果我必须回显令牌,我回显文件 A,如果它的一些信息,比如一条日志消息,我回显到一个 og 文件。

我希望能够将进度记录到日志文件中。我希望能够做类似的事情。WSH.echo('a.txt', st_token[i]); 将令牌写入 a.txt 并将WSH.echo('b.txt', 'Token written successfully');消息记录到 b.txt。如果提供了输入文件,您的选项将令牌写入 a.txt,如果未提供输入,则写入 b.txt。而且我希望能够交替写入文件。诸如此类WSH.echo('a.txt', st_token[1]); WSH.echo('b.txt', 'Token 1 written successfully'); WSH.echo('a.txt', st_token[2]); WSH.echo('b.txt', 'Token 2 written successfully');...

4

1 回答 1

0
@if(@a==@b) @end
/* :: batch portion
@ECHO OFF
setlocal 
if exist "%~1" ( 
  >FILE1.TXT cscript /nologo /e:jscript "%~f0" < "%~1"
 ) else ( 
  >FILE2.TXT cscript /nologo /e:jscript "%~f0" 
 )
 exit /b 
:: JScript portion */ 
while (!WSH.StdIn.AtEndOfLine) {
 var line=WSH.StdIn.ReadLine();
 var st_token = line.split('\t');
WSH.Echo(st_token[i]);

我相信这应该满足您的要求,批处理语法和语言障碍允许...

于 2013-04-29T15:57:54.703 回答