1

Я должен получить изображения из папки - с подпапками, которые обновляются автоматически - с их расширениями.

Эти файлы должны быть скопированы в папку, где веб-сайт на основе PHP будет редактировать их (путем переименования и создания файла XML), чтобы их можно было загружать и интегрировать в канал XML.

Из-за функции переименования скрипта, когда я выполняю усиление копирования, все файлы дублируются, потому что скрипт уже переименовал исходные.

Я попробовал несколько вещей с rsync но я ищу что-то более мощное, потому что я не могу копировать файлы с внешней "историей".

#!/bin/bash
find  '/home/name/picture' -name '*.jpg' | while read FILE ; do rsync --backup  --backup-dir=incremental --suffix=.old  "$FILE" /var/www/media ; done
wget --spider 'http://myscript.php' ; 
#exit 0

PS: В качестве небольшого дополнения я хотел бы заменить '.' с пробелом сразу после копии *.jpeg . Мой PHP-скрипт имеет некоторые проблемы, чтобы определить файлы с запятой из-за расширения. Я размышляю над командой find - как я делал раньше - с функцией sed ? Это хорошая идея?

1 ответ1

0

Вы можете использовать следующее:

#!/bin/ksh
DEST_DIR=/destination
HIST_DIR=/images_bck
SOURCE_DIR=/images

find ${SOURCE_DIR} -name "*.jpg" >${HIST_DIR}/tmp.file
exec 3<${HIST_DIR}/tmp.file

while read file <&3;do
  file_name=$(basename "${file}")
  if [ ! -f "${HIST_DIR}/${file_name}.old" ];then
    cp -p "${file}" "${HIST_DIR}/${file_name}.old"
    cp "${file}" "${DEST_DIR}"
  fi
done
exec 3<&-
[ -f ${HIST_DIR}/tmp.file ] && rm -f ${HIST_DIR}/tmp.file

Для новых пользователей;

sudo apt-get установить ksh

это kornshell, после изменения DEST_DIR, HIST_DIR, SOURCE_DIR и сделать

кш-в./MySuperScript.ksh

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .