【发布时间】:2020-04-22 07:19:12
【问题描述】:
我有一个包含一组子目录的基本目录,其中一些目录包含扩展名为 jpg 的文件。我想将这些文件复制到另一个目录,这是我的目标。 我决定将 find 的值分配给一个列表变量,然后遍历列表并将源文件复制到目标位置。
mylist=$(find . -type f -name "*.png")
如您所知,mylist 变量将只有一个元素。它将是包含所有找到的不同文件的字符串,并且索引 0 内有很多文件。
我尝试使用以下方法将行分开到一个新数组上
while IFS= read -r line; do
files+=( "$line" )
done <"$mylist"
但是这不起作用,只是转储了查找结果中的所有行。
我在 MacOS 中使用 bash 3.2。我想知道如何解析 $mylist 变量,以便我可以在每个索引中拥有另一个带有文件路径的变量。或者作为一种替代方法,在执行后立即将 find 命令的结果放入列表中
【问题讨论】: