Скопируйте несколько файлов и отправьте каждый в определенную подпапку
У меня есть папка с обложками CD в.jpg и другая папка с подпапками, каждая с соответствующим CD. Я хочу отправить обложку каждого CD в соответствующую подпапку. Они уже в алфавитном порядке. Как я могу это сделать?
1 ответ
Это то, что легко с оболочкой Unix. Вы можете сделать это и с bash, но вот как вы можете сделать это с бесплатной демо-версией моей оболочки Hamilton C. (Да, я автор.)
Предположим, что вы находитесь в каталоге, содержащем jpgs, и что каталог, содержащий-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
Опция означает запись каждого каталога в отдельную строку. Двойные кавычки превращают каждую строку в отдельное слово (если имена каталогов содержат пробелы, мы не хотим разбивать их на отдельные слова).
Если что-то из этого не ясно, просто спросите.