AFAIR Вы должны, мог он в/etc/xinetd.d/tftp
service tftp
{
...
server_args = -s /your/location/to/tftpboot
Как другие прокомментировали, это поможет работать с данными, если это будет запятая разделила значения (CSV).
Вот мое решение для преобразования данных к CSV:
$ cat file | sed 's/ \([0-9]\)/,\1/g'
Kuala Lumpur,78,56
Seoul,85,66
Karachi,95,75
Tokyo,85,60
Lahore,85,75
Manila,90,85
Это заменяет любое пространство, предшествующее цифре с запятой. \1
ссылается на группу ([0-9]), цифра после пространства. Оттуда можно использовать sort
с -t
аргумент для определения разделителя полей.
$ cat file | sed 's/ \([0-9]\)/,\1/g' | sort -t, -k2
Kuala Lumpur,78,56
Tokyo,85,60
Seoul,85,66
Lahore,85,75
Manila,90,85
Karachi,95,75
Если требуется преобразовать назад в пробелы или сделать таблицу, вот два примера:
$ cat test | sed 's/ \([0-9]\)/,\1/g' | sort -t, -k2 | tr , ' '
Kuala Lumpur 78 56
Tokyo 85 60
Seoul 85 66
Lahore 85 75
Manila 90 85
Karachi 95 75
$ cat test | sed 's/ \([0-9]\)/,\1/g' | sort -t, -k2 | column -s, -t
Kuala Lumpur 78 56
Tokyo 85 60
Seoul 85 66
Lahore 85 75
Manila 90 85
Karachi 95 75
Если можно измениться файл, чтобы иметь вкладку разделил столбцы, жизнь будет легче. Если изменение файла не является опцией, эта острота Perl сделает это для Вас:
perl -ne 's/\s+/\t/g; s/([a-z])\s([a-z])/$1 $2/ig; s/\t$/\n/; print;' file |
sort -t$'\t' -nk3
Kuala Lumpur 78 56
Tokyo 85 60
Seoul 85 66
Karachi 95 75
Lahore 85 75
Manila 90 85
ОБЪЯСНЕНИЕ:
s/\s+/\t/g
: измените ВСЕ пробелы на ВКЛАДКИ.s/([a-z])\s([a-z])/$1 $2/ig
: измените ВКЛАДКИ, которые являются между двумя буквами (никакие числа) назад к одиночным пробелам.s/\t$/\n/
: первая замена представляет ВКЛАДКУ в конце каждой строки, возвратите это к символу новой строки (\n
).
sort -t$'\t' -nk3
: используйте ВКЛАДКУ в качестве разделителя (вид имеет странный синтаксис там, я знаю, вижу здесь для получения дополнительной информации), и вид численно на третьем столбце.
awk '{print $NF,$0}' file.txt | sort -nr -k1 | cut -d' ' -f2-
$NF
: количество полей, $0
: целая строкаsort -nr
: числовой обратный (убывание)sort -k1
: вид первым столбцом (разграниченный последовательностями пробелов и вкладок)cut -d
: разделитель (значения по умолчанию к вкладке)cut -f2-
: поля 2 для длительности (не сворачивает или разделяет разделители),ruby -e 'puts readlines.sort_by{|l|l.split[-1].to_i}.reverse' file.txt
readlines
= ARGF.readlines
split
разделения на пробеле по умолчанию