Я новичок в Linux и bash-скриптах, и в настоящее время я в тупике с этой проблемой!Копирование уникальных файлов в новое место
У меня есть каталог, содержащий много изображений, из которых мне нужно скопировать уникальные изображения в новое место. Я знаю, что существует множество вариантов того, как это сделать, но на данный момент у меня очень ограниченные знания, поэтому я понимаю, что я ошибаюсь.
Я использовал find и cat для создания этого списка и попытался скопировать файлы с целью сравнить их (используя md5 и проверить имена файлов), когда они есть.
Однако текстовый файл содержит 30 файлов, но только 18 были скопированы. Может ли кто-нибудь посоветовать?
Мой код для поиска файлов является -
find $1 -name "IMG_****.JPG" | cat > list.txt
и мой код, чтобы скопировать из списка
for image in $(cat list.txt);
do
cp $image $2
done
У вас возникли ошибки? Это должно либо работать, либо отображать ошибки ... –
Тематическое чтение: [ParsingLS] (http://mywiki.wooledge.org/ParsingLs) и [бесполезное использование кошки] (http://partmaps.org/era/unix/ award.html). – ghoti
Кроме того, что именно вы подразумеваете под именем '' IMG _ ****. JPG? '? Это соответствует 'IMG_.JPG', а также' IMG_abcde123.JPG'. Это ваше намерение? Если да, просто используйте 'IMG _ *. JPG' для ясности. Если вы действительно хотите использовать только файлы с 4 символами между '_' и' .', используйте 'IMG _ ????. JPG'. Подробнее см. В [справочной странице] (http://www.gnu.org/software/bash/manual/bashref.html#index-pathname-expansion). – ghoti