[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

shell - help wanted



Доброго времени суток, russian

Сейчас у меня возникла интересная задача:
Нужно с нескольких серверов собирать список файлов на ftp и передавать их на один из них. Сейчас задачу решил по своему (см. конец письма) и понял, что всё ужастно тормозит.

Собираюсь всё это впихивать в mysql, дабы облегчить жизнь серверу, который занимается работой с получившимися файлами и разными выборками.

Собственно вопрос: может кто подскажет тул, который одинаково отрабатывает на woody и sarge в области вывода списка файлов с намёком сформировать список для втыкания всего этого в mysql? (у ls не совпадает количество столбцов и формат даты разный - хотя у меня есть смутное подозрение, что ядро здесь имеет первостепенное значение)

#========start
#!/bin/sh
#ftp-cron
find /home/ftp -type f | sort>/root/temp.txt
printf ''>/home/ftp/server2.txt
while read LOOP
do
 SIZE=`ls -ln "$LOOP" | awk '{print "|"$3"|"$4"|"$5"|"$6"|"$7"|"$8}'`
 LOOP=`echo $LOOP | awk '{print substr($0,10)}'`
 echo $LOOP$SIZE>>/home/ftp/server2.txt
done </root/temp.txt
rm /root/temp.txt
chown ftp-cron /home/ftp/server2.txt
chmod u+rw,g-rw,o-rw /home/ftp/server2.txt
gzip -9 -S .gz /home/ftp/server2.txt
#========end

PS: find использую потому-что не удалось побороть страсть шелла разделять значения пробелами
PPS: ногами сильно не пинайте - это мой почти самый первый скрпит ;-)
--
WBR, Dmitrii
ICQ: 193-74-771
Phone: +375-29-40-LINUX



Reply to: