从Windows控制台我需要移动一组文件。选择要移动的文件的标准基于以下内容:
findstr /M "<content-criteria>" *.$$$ > files_to_move.txt
如何启动move
命令来处理此列表?
我完全错误的尝试:
move %1 dest_folder < files_to_move.txt
答案 0 :(得分:2)
您需要对列表中的每个文件执行移动操作
for /f "delims=" %%a in (files_to_move.txt) do move "%%a" dest_folder
for /f
命令将读取输入文件。对于每一行,将使用存储在可替换参数do
中的行的内容执行%%a
子句之后的代码。 "delims="
子句向for
命令指示将不使用分隔符来分隔标记中的行。
答案 1 :(得分:1)
您需要使用for
来迭代文本文件。另一种方法是使用循环迭代另一个命令的输出(在本例中为findstr),而不是将其输出到临时文本文件。
for /f "delims=" %%a in ('findstr /M "<content-criteria>" *.$$$') do move "%%a" TargetFolder