我需要将一些xls文件转换为xlsx文件.我可以通过将此命令运行到cmd提示符(windows)中将一个xls文件成功转换为xlsx:
ssconvert inputFileName.xls outputFileName.xlsx
Run Code Online (Sandbox Code Playgroud)
(ssconvert是一个Gnumeric的命令行实用程序,可以在不同的电子表格文件格式之间进行转换)
我想编写一个批处理文件,指定目录中的FOR EACH文件运行我上面写的命令,使用当前文件名作为输入和输出文件名.
例如,如果我有这组文件:
c:\directory\file1.xls
c:\directory\file2.xls
c:\directory\file3.xls
Run Code Online (Sandbox Code Playgroud)
输出应该是
c:\directory\file1.xlsx
c:\directory\file2.xlsx
c:\directory\file3.xlsx
Run Code Online (Sandbox Code Playgroud)
所以批量伪代码应该是这样的
directory = c:\directory\
for (fileName in directory)
ssconvert fileName.xls fileName.xlsx
Run Code Online (Sandbox Code Playgroud)
谁能帮我?
我可以按预期运行forfiles命令
cmd /c
C:\>forfiles /c "cmd /c ping /a" IP address must be specified.
但是,如果我删除它cmd /c,它不再识别任何参数,只有基本命令
C:\>forfiles /c "ping /a"
Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name
我必须使用cmd /c,即使PATH上有外部命令吗?