我有一个文件夹,里面有 .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
选项表示将每个目录写入单独的行。双反引号将每一行变成一个单独的单词(如果任何目录名称包含空格,我们不想将它们分成单独的单词)。
如果还有任何不清楚的地方,请直接询问。