From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Ilya Kuznecov Organization: ZAO "SMF Blok" To: community@altlinux.ru Date: Wed, 3 Sep 2003 10:49:44 +0500 User-Agent: KMail/1.5 MIME-Version: 1.0 Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: 8bit Content-Disposition: inline Message-Id: <200309031049.45222.kuznecov@blok-caf.ru> Subject: [Comm] =?koi8-r?b?0NLJIMLPzNjbz8ogzsHH0tXay8Ugxs/Sy8kgzsUgxMXM?= =?koi8-r?b?wcDU09E=?= X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.1.2 Precedence: list Reply-To: community@altlinux.ru List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Sep 2003 05:49:16 -0000 Archived-At: List-Archive: List-Post: При большом количестве открытых файлов и запущенных процессов простейший скрипт (запускаемый из Makefile) начинает выдавать ошибку: ./sizer: fork: Resource temporarily unavailable Но стоит позакрывать программы и всё нормально. ФС -- EXT3. % find -type d |wc -l 172 % find -type f |wc -l 2769 Но скрипт вызывается в гораздо более щадящих условиях (1-2 директории с ~10 файлами), но много раз (142 раза, точнее) -- по числу директорий верхнего уровня. Идея скрипта -- создать xml-файл вида:
...
#!/bin/sh rec() { for i in $1/* ; do if [ -d $i ]; then rec $i else A=`LANG=C du --max-depth 10 -h $i|awk '{print $1}'` B=`echo $i | sed 's/\.\///'` echo "" fi done } echo '
' cd $1 rec '.' echo '
' % ulimit unlimited Система -- АЛМ22 с апдейтами. -- chumpa, Cybernetic Humanoid Used for Mathematics and Potential Assassination kuznecov@blok-caf.ru http://chumpa.izhnet.ru icq 122393064