复制多个文件并将每个文件发送到特定的子文件夹

复制多个文件并将每个文件发送到特定的子文件夹

我有一个文件夹,里面有 .jpg 格式的 CD 封面,另一个文件夹里面有子文件夹,每个子文件夹里都有对应的 CD。我想将每个 CD 封面发送到其对应的子文件夹中。它们已经按字母顺序排列了。我该怎么做?

答案1

这种事情在 Unix shell 中很容易做到。你也可以用 bash 来做这件事,但下面是使用免费试用版我的汉密尔顿C壳。(是的,我是作者。)

假设您位于包含 jpg 的目录中,并且 directory-containing-CDs 是包含 CD 的子目录的目录的路径:

set CDs = ``ld -1 directory-containing-CDs``  # Get list of CD directories
set covers = *.jpg  # Get the list of jpgs
for i = 0 to $#covers - 1 do
   mv $covers[i] directory-containing-CDs\$CDs[i]  # Move the jpgs one-at-a-time.
end

ld是运行 的别名ls,仅返回目录。该-1选项表示将每个目录写入单独的行。双反引号将每一行变成一个单独的单词(如果任何目录名称包含空格,我们不想将它们分成单独的单词)。

如果还有任何不清楚的地方,请直接询问。

相关内容