The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Как выдать файлы в обратном порядке ?"
Версия для распечатки Пред. тема | След. тема
Форум Программирование под UNIX
Исходное сообщение [ Отслеживать ]

. "Как выдать файлы в обратном порядке ?" +/
Сообщение от allez (ok), 01-Апр-06, 17:13 
>Что вижу я.
>Во-первых вместо одно письма получаем по письму на файл. Т.е. изначальная задача
>не выполняется :(
Согласен. Виной тому - моя невнимательность. Необходимо объединить обрабатываемые в один
и уже его отправить по почте:
$ 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); возможно, данная возможность существует только в ней...

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Как выдать файлы в обратном порядке ?, XPurple, 30-Мрт-06, 14:55  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру