我希望处理放置在以下目录中的多个.csv日志文件
C:\ Myfiles
此目录可能还包含子目录,这些子目录下有文件。我需要列出当前未写入的所有.csv文件的完整路径。 我面临的挑战是我不知道如何判断文件是否正在使用(这样我就可以避免对其进行处理)。
我可以使用下面的命令成功列出文件,而不会出现问题,但是不幸的是,我找不到一种机制来避免列出正在使用/锁定的文件。
dir“ C:\ Myfiles * .csv” / s / b> C:\ Output \ files_to_process.txt
此命令搜索所有子目录并打印所有.csv文件的完整路径。
到目前为止,我一直在使用带有备份标记/ B的robocopy(在管理员模式下)将文件临时移动到临时目录
ROBOCOPY C:\ Myfiles \ C:\ Output \ temp / mov / S / B * .csv
上面的robocopy命令将忽略正在使用的文件。接下来,我可以成功运行dir命令以获取需要处理的文件的完整路径
dir“ C:\ Output \ temp * .csv” / s / b> C:\ Output \ files_to_process.txt
您看到的过程很繁琐。我正在寻找一种更简便的方法来列出未使用的文件的完整路径,而无需复制它们。在Windows中可以吗?