первый пост. Предыстория. Моя жена - фотограф, она делает много снимков и сохраняет их на диск (mnt / STStorage), пока редактирует их, но после этого никогда не очищает их. У меня есть диск, на который я хотел бы переместить папки в зависимости от даты изменения. (/ Mnt / LTStorage). Нужна помощь со сценарием, который я могу добавить к заданию cron для выполнения один раз в день 30 1 * * * Я бы хотел, чтобы сценарий ..
- Проверьте / mnt / STStorage / root на дату последнего изменения и, если старше 14 дней, переместите эту папку и все в ней в / mnt / LTStorage /, сохранив то же имя папки.
- Затем напишите, что было перемещено в / mnt / STStorage /, чтобы мы знали, что было перемещено, и отправьте мне по электронной почте журнал перемещенных папок.
ОС CentOS 6.4
вот что у меня есть, думаю, это может сработать сейчас. Может быть чище.
#/bin/bash
dt=$(date +%Y.%m.%d)
From="/mnt/STStorage/"
To="/mnt/LTStorage/"
if [[ ! -d "$To" ]]; then
mkdir -p "$To"
fi
cd "$From"
for i in "$@"; do
find . -type d -mtime +14 -exec mv "{}" "$To" \; > "$From"/Moved."$dt".txt
uuencode "$From"/Moved."$dt".txt "$From"/Moved."$dt".txt | mail -s "Files Moved"
[email protected]
done
Затем я добавлю это в crontab, чтобы запускать его раз в день.
mv
. Сделай это -find . -type d -mtime +14 -exec mv -v "{}" "$To" \;
- person jaypal singh   schedule 11.06.2013