如何将文本文件中列出的* .rar文件复制到另一个文件夹?

时间:2014-08-23 22:42:00

标签: batch-file copy

我有一个包含文件名的文本文件,需要将文本文件中列出的文件复制到另一个文件夹。

只有一个问题是文件名在文本文件末尾没有.rar

我正在寻找一个可以读取文本文件并将文本文件中列出的所有.rar文件复制到另一个文件夹的批处理文件。

1 个答案:

答案 0 :(得分:0)

假设您的文本文件如下所示,并且名为files.txt

file1
file2
file3

并且你文件夹中的文件名为file1.rar,file2.rar和file3.rar以下命令行可以实现你想要的:

for /f "delims=" %f in (files.txt) do copy "%f.rar" "c:\some\other\folder" 

这是如何工作的?

使用for /?详细说明可用选项及其用法:

  

FOR / F [“options”]%变量IN(文件集)DO命令[command-parameters]

     

file-set是一个或多个文件名。每个文件都被打开,读取    并在进入文件集中的下一个文件之前进行处理。    处理包括读取文件,将其分解为    单独的文本行,然后将每行解析为零或    更多的代币。然后用for调用for循环的主体    设置为找到的标记字符串的变量值。默认情况下,/ F.    从每个文件的每一行传递第一个空白分隔的标记。    空白行被跳过。

我使用delims选项确保读取整行,包括任何空格。

  

delims = xxx - 指定分隔符集。这将替换默认的空格和制表符分隔符集。

在此解决方案中,为文本文件中的每一行调用复制命令,该命令可以修复丢失的扩展名并将其复制到新位置。