如何将 notepad.txt 中列出的所有文件复制到其他位置

如何将 notepad.txt 中列出的所有文件复制到其他位置

我有一个notepad.txt文档(文件),其中包含我电脑上几个文件的文件路径名。例如:

C:\Users\Foo\Pictures\Photographs\September\P1030944.jpg
C:\Users\Foo\Videos\Art\Movies\Class\movie.avi
C:\Users\Foo\Music\Jazz\20051.mp3

...ETC。

文本文档中列出的文件位于我的电脑上的不同位置。是否有办法仅H:\Users\Destination使用文档中的路径名将这些文件从其来源移动到一个目标(例如)notepad.txt

答案1

您可以使用命令

for /f "tokens=*" %A in (notepad.txt) do @move "%~A" "H:\Users\Destination\%~nxA"

答案2

这可以在 PowerShell 中完成:

获取内容 .\notepad.txt | ForEach-Object {Move-Item -Force "$_" "H:\Users\Destination\"}

  • Get-Content .\notepad.txt抓取文件中的每一行notepad.txt
  • ForEach-Object循环播放来自Get-Content
  • Move-Item -Force将文件移动到新位置,无论文件是否已存在。如果不使用开关-Force,如果目标目录中存在相同的文件名,脚本将抛出错误。
  • $_是从管道传入的行的值Get-Content(例如C:\Users\Foo\Pictures\Photographs\September\P1030944.jpg)。双引号$_ 不是必需的,但如果路径或文件名中有空格,则必须使用双引号。

相关内容