Batch file 要在文件夹中搜索的批处理
我正在尝试编写一个批处理文件。它在文件夹中查找特定文件,获取它们的路径并使用它们调用java脚本:例如:我在桌面上有一个文件夹cbacklog,其中包括*.xls文件和一个converter.jsjava脚本。我想查看cbacklog如果它有excell文件,我将使用此文件路径并调用converter.jsconverter将转换此文件。然后批处理文件将移动到下一个excell文件。。。获取它的PAT并将其用于convert.jsBatch file 要在文件夹中搜索的批处理,batch-file,batch-processing,file-conversion,Batch File,Batch Processing,File Conversion,我正在尝试编写一个批处理文件。它在文件夹中查找特定文件,获取它们的路径并使用它们调用java脚本:例如:我在桌面上有一个文件夹cbacklog,其中包括*.xls文件和一个converter.jsjava脚本。我想查看cbacklog如果它有excell文件,我将使用此文件路径并调用converter.jsconverter将转换此文件。然后批处理文件将移动到下一个excell文件。。。获取它的PAT并将其用于convert.js var fso = new ActiveXObject("Scr
var fso = new ActiveXObject("Scripting.FileSystemObject");
var xls03Path = WScript.Arguments(0);
xls03Path = fso.GetAbsolutePathName(xls03Path);
var xls95Path = xls03Path.replace("cbacklog", "dbacklog");
xls95Path =xls95Path.replace(/\.xls[^.]*$/, ".xls");
var objExcel = null;
try
{
WScript.Echo("Saving '" + xls03Path + "' as '" + xls95Path + "'...");
objExcel = new ActiveXObject("Excel.Application");
objExcel.Visible = false;
var objExcl = objExcel.Workbooks.Open(xls03Path);
var wdFormatxls = 39;
objExcl.SaveAs(xls95Path, wdFormatxls);
objExcl.Close();
fso.MoveFile(xls03Path,"C:\\Users\\cguneyel\\Desktop\\cbacklog\\processed\\");
}
finally
{
if (objExcl != null)
{
objExcl.Quit();
}
}
对于文件夹中的每个xls文件,调用文件完整路径作为参数的脚本我现在只有java脚本@r3ap3rto要调用我的javascript,我使用以下命令:cscript.exe//nologo//E:jscript C:\Users\user\Desktop\cbacklog\converter.js C:\Users\user\Desktop\cbacklog\test。xls@user32,如果您是从命令行运行它,将
%%
替换为%%
。正如所写的,该命令用于需要转义百分号的批处理文件。你调用脚本的方式有什么问题?//nologo
只是为了不显示“logo”,在这种情况下不需要//E:
,因为它是从脚本扩展名推断出来的,并且.xls文件的完整路径是作为参数传递的。问题在哪里?
for %%a in ("c:\somewhere\cbacklog\*.xls") do cscript converter.js "%%~fa"