我需要遍历文件夹中的特定文件并将它们合并到一个文件中,并希望它使用批处理文件来实现。我的文件如下所示。
ILCY_NEW_20110908123008
ILCY_NEW_20110908123009
ILCY_NEW_20110908123010
意思是,ILCY_NEW_<i>timestamp</i>
.该文件夹还将包含其他文件,但我只需要具有今天时间戳的文件。所以我编写了以下代码来遍历所有文件并将名称组合到变量 CL
中.
set tt=%yyyy%%mm%%dd%
for %%f in (ILCY_NEW_%tt%* . *) do set cl=%cl%+%%f
set cl=%cl:~1%
echo %cl%
copy %cl% ILCY_NEW_CQ.csv
但是,只有最后一个文件被选中并且它只会被复制到 ILCY_NEW_CQ.csv
中忽略所有以前的文件,即使它们的名称中有今天的时间戳。有人可以帮我吗?
最佳答案
我无法让你的日期逻辑在我的机器上运行,但假设你的 for 循环正确地获得了正确的文件名,你可以这样做:
set tt=%yyyy%%mm%%dd%
for %%f in (ILCY_NEW_%tt%*.*) do type "%%f" >> ILCY_NEW_CQ.csv
“>>”将附加到文件(与“>”相反,后者会覆盖它)。参见 this page供引用。
关于batch-file - 遍历一个文件夹中的一组文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7343343/