从文本文件中读取文件列表,移动它们并在 bash 中保留目录结构

从文本文件中读取文件列表,移动它们并在 bash 中保留目录结构

与所问的问题类似这里,我试图将文件列表从一个文件夹移动到另一个文件夹,同时保留目录结构。移动命令发生在 bash 脚本前面的一系列事件之后。

在链接的示例中,mv 命令在脚本进行查找时动态发生(在单独的 C shell 中?)。这对我来说不起作用,因为我需要首先通过 AV 扫描处理列表中的文件。一旦它们通过了 AV 扫描,我就想将它们移动到目的地,同时保留目录结构。

我原来的解决方案是

while read moveitems; do
  printf "mv \"$moveitems\" \"$hotfolder\"\n"
done <"$filesin" | tee -a "filemoves" >/dev/null
chmod +x $filemoves
$filemoves >> $scanlog

这只适用于将所有文件移动到一个文件夹中,这不适合这种情况。

我相信这个问题有很多更优雅、更高效的解决方案,不幸的是我是右脑人,这种事情对我来说并不容易。请帮忙!谢谢

答案1

提及文件中的所有文件名。下面提到的命令会将所有文件名移动到目标目录:

awk '{print "mv " " " $1  " " "/Destinationpath"}' filename|sh

相关内容