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

Re: shell - help wanted



Dmitrii Varvashenia -> debian-russian@lists.debian.org  @ Mon, 31 Oct 2005 17:16:22 +0200:

 DV> Собственно вопрос: может кто подскажет тул, который одинаково
 DV> отрабатывает на woody и sarge в области вывода списка файлов с
 DV> намёком сформировать список для втыкания всего этого в mysql?

perl

 DV> (у ls не совпадает количество столбцов и формат даты разный - хотя
 DV> у меня есть смутное подозрение, что ядро здесь имеет первостепенное
 DV> значение)

Ядро тут вообще ни с какого боку.

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

 DV> PS: find использую потому-что не удалось побороть страсть шелла разделять
 DV> значения пробелами
 DV> PPS: ногами сильно не пинайте - это мой почти самый первый скрпит ;-)

Вообще если говорить о том же самом на том же самом шелле, то

find /home/ftp -type f -print0 | xargs -0 ls -n | awk ....

будет работать куда быстрее.

-- 
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru

А Элберет оксюморон! (c)JB



Reply to: