>Что вижу я.
>Во-первых вместо одно письма получаем по письму на файл. Т.е. изначальная задача
>не выполняется :(
Согласен. Виной тому - моя невнимательность. Необходимо объединить обрабатываемые в один
и уже его отправить по почте:
$ for i in `ls logfile.log* | sort -nr`; do cat $i >> log_for_mail; done; cat log_for_mail | mail my
>Во-вторых сортировка хоть и задается числовая, но выполняется она для строковых значений.
>И опять требуемый порядок следования файлов мы не получаем. Исправить можно
>заданием точки как раздилителя полей и реверсной числовой сортировкой по третьему
>полю. Но нужно ли? (см. первое замечание)
А вот тут позволю себе не согласиться. Указание опции -n заставляет команду sort
игнорировать в сортируемых строках "неподходящие" символы (то есть отличные от цифр,
разделителей целой и дробной частей и указателей знака числа). Вот тому пример:
$ touch file
$ touch file.1
$ touch file.2
$ touch file.3
$ ls file* | sort -nr
file.3
file.2
file.1
file
Для пущей наглядности можно несколько изменить условия задачи:
$ touch f1ile
$ touch fi2le
$ touch fil3e
$ ls f* | sort -nr
fil3e
fi2le
f1ile
Правда, должен оговориться, что я использовал GNU-версию sort (SuSE Linux 9.2 и 10.0, а
также FreeBSD 4.9); возможно, данная возможность существует только в ней...