Alexey Pechnikov пишет:
В сообщении от Monday 24 December 2007 10:15:15 Mikolaj Golub написал(а):On Sun, 23 Dec 2007 18:05:23 +0300 Alexey Pechnikov wrote: AP> P.S. Утилита rm отвратительно работают с большим числом файлов в директории. Я AP> пишу свои скрипты на tcl, которые выполняют то же самое на несколько порядков AP> быстрее. В то же время ls работает нормально, не знаю, в чем проблема. На AP> примере миллиона файлов: rm /test_1000000/* думает часами и зверски насилует AP> винт, в то время как на тикле foreach fn [glob /test_1000000/*] {file delete AP> $fn} работает две-три минуты и почти не шелестит винтом. Посмотрите, может, и AP> у вас где подобные грабли закопаны. Сдается мне, что ту проблема с работой glob в шелле а не с утилитой rm. И вообще использование * при работе с миллионом файлов в shell кажется мягко говоря странным. Неужели не нарвались на Argument list too long? Ну да, возможно еще один повод похаять shell и порадоваться за тикль, но к сожалению без шелла никуда :-( -- Mikolaj GolubИз шелла писал _одну_ строку - rm /test_1000000/*. И аргумент "/test_1000000/*" всего один, откуда возьмется "Argument list too long?" Если бы в тикле оно не работало, да, полез бы в исходники rm
Тебе ж говорят, rm тут ни при чём! Звёздочку для него шелл раскрывает - http://gazette.linux.ru.net/rus/articles/abs-guide/x12531.html
разбираться, а так - вот именно, что повод похаять, но исправлять этот самый rm надобности нет. Вообще говоря, наличие указанного бага в узкоспециализированном языке (шелл) и отсутствие в языке с широкой областью применения (тикль) заставляет подумать о том, что пора шелл выкинуть на свалку. Благо заменить есть чем - функциональных языков хватает.
Ой-ёй, зачем такие экстремистские высказывания?Не умеешь в баше скрипты готовить - пиши в тикле или в чём другом, зачем орать при этом - "пора шелл выкинуть"?
-- С уважением, Любимец Андрей Алексеевич