Проблема сортировки Unix - PullRequest
       1

Проблема сортировки Unix

0 голосов
/ 29 января 2011

Моя сортировка не работает для чисел (от k3 до k6), но она работает для k1 и k2, которые являются алфавитами.Как отсортировать от k3 до k6?Спасибо за вашу помощь.

данные:

MacOS X для чайников: Мэри Абрахам: 53.48: 88: 38

код:

awk -F ": "'{printf"% -30s% -20s% -10.2f% -10d% -10d% s \ n ", $ 1, $ 2, $ 3, $ 4, $ 5," $ "$ 3 * $ 5}' BookDB.txt |sort -nk3

формат: "НАЗВАНИЕ | АВТОР | ЦЕНЫ | QTY AVBL | ПРОДАНО КОЛИЧЕСТВО | ВСЕГО ПРОДАЖ"

1 Ответ

1 голос
/ 29 января 2011

Похоже, что пробелы в названии книги и имени автора приводят к тому, что сортировка неправильно подсчитывает столбцы, если вы печатаете символ разделителя, такой как '|'между каждым полем в awk, вы можете использовать sed для временной замены всех пробелов, например,

|sed -e 's / / # / g' -e 's / | / / g' |сортировать -nk3 |sed -e 's / / | / g' -e 's / # / / g'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...