Автоматическая обработка файлов на хостинге с помощью bash

В своё время у меня был скрипт который закачивал на сайт файлы и размещал их в www/upload/ и делал запись базе данных. Постепенно хостинг разросся, директорий www/upload/ стало множество и возникла потребность в менеджере закачанных файлов. Пришлось написать вот такой скрипт

for f in $(find ~/*/www/upload/ -type f -maxdepth 1 );
 do
  domen=$(echo $f| awk -F/ '{print $1}')
  filename=$(echo $f| awk -F/ '{print $4}')
  dt=$(stat  -t %y-%m-%d $f| awk -F \" '{print $2}')
  echo "update files set date=$dt,id_domen=(select id from domen where domen_name='$domen') where filename='$filename'";
 done > file.sql
mmysql < files.sql

тут в цикле перебираются все файлы из директорий /www/upload/ всех сайтов, из полученного имени файла выделяется в переменные название домена, собственно имя файла и дату создания файла, а затем эти переменные используются для формирования sql запроса который делает привязку каждого файла к домену для которого он закачан

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

Комментариев 0
Нужна авторизация с помощью
Об авторе
Илья Илья

меня можно найти тут