Ничего себе, это звучит сложным, , mkusb может сделать Живую Персистентную установку намного быстрее, чем я могу прочитать любую процедуру выше. Они также походят на Полные установки не Персистентные Живые установки. Персистентная установка использует casper-rw файл или раздел. Это называют персистентной установкой, потому что слово, персистентное в загрузочном файле, используется для активации персистентности.
См.: https://help.ubuntu.com/community/mkusb для деталей mkusb.
Карта памяти А, сделанная с mkusb также, не имеет никакой проблемы при выполнении Полной установки на жестком диске или USB.
Скажите, если это работает (не проверено;)):
for f in `ls cloudcam-????????.jpg`; do
name=`echo "$f"|sed 's/ -.*//'`
datedir=`echo "$name"|cut -c 10-17`
dir="DestinationDirectory/$datedir/$name"
mkdir -p "$datedir"
mv "$f" "$datedir"
done
.. он должен копировать все jpg, начиная с cloudcam-, создать каталог для позиций с 10 по 17 имени файла, создать каталог и переместить файл. Поэтому, если у вас есть изображения с другой датой, они будут помещены в другой каталог.
Сохраните его и сделайте скрипт исполняемым с помощью chmod 775.
Попробуйте сначала на копии ваших файлов.
Вы можете использовать цикл for ...
сначала запустите тест, чтобы убедиться, что в нем перечислены все, что вам нужно
for i in cloudcam-20130825*; do echo $i; done
переместить изображения
for i in cloudcam-20130825; do mv $i 20130825; done
Вы можете переместить все соответствующие файлы с помощью простого глобуса оболочки
$ mkdir 20130825
$ mv cloudcam-20130825*.jpg 20130825
Это будет работать при условии, что нет 1000 файлов (в этом случае может потребоваться «пакетировать» ходы, используя find -exec mv ... +
или xargs
)
Если у вас есть куча разных дат и вы хотите на лету анализировать имена файлов и создавать каталоги по мере необходимости, вы можете сделать что-то вроде [ 1110]
for f in cloudcam-*.jpg; do d="${f:9:8}"; [[ ! -d "$d" ]] && mkdir "$d"; mv -t "$d" "$f"; done
Предполагается, что имена файлов точно такие, как показано в вашем исходном сообщении, т. Е. Что штамп даты yyyymmdd
начинается с символа № 9 - если это не так, то возможны более сложные синтаксические разборы, например использование конструкций bash, таких как ${f#front}
и ${f%%back}
, для удаления ведущих и конечных подстрок.