Delta чисел в файле

find /search/root -printf "%T+ %10s %p\n" | sort -n --reverse

Если Вы используете GNU, находят, и никакое имя файла (или путь) не содержит новую строку (который мог быть проверен a -path тест).

4
04.11.2014, 18:51
3 ответа

Если у вас есть пакет цифра-utils установленный, можно сделать:

cut -d ' ' -f 2 inputfile | numinterval | sort -u 

первое и последнее число там дают минуту, resp. макс. изменяется.

, Если тот список является слишком длинным и вы также имеете , moreutils установил вас, может сделать:

cut -d ' ' -f 2 inputfile | numinterval | sort -u | pee "tail -1" "head -1"

На Монетном дворе необходимо смочь установить те пакеты, на Солярисе, вероятно, необходимо скомпилировать из источника.

6
27.01.2020, 20:47

показывает две линии с наибольшим количеством различий между

awk '{c=$2-a[2];
      if(c<0)c=-c;
      if(+a[2]&&c>b){b=c;d=a[1]" "a[2]"\n"$0};
      split($0,a," ")}
  END{print "Difference is",b,"between:\n"d}'
1
27.01.2020, 20:47
$ awk 'BEGIN{last=0}{delta[NR]=$2-last; last=$2; print $0" "delta[NR]}' file

дадут вам

2003-07-03T16:05 279 279
2003-07-03T16:10 283 4
2003-07-03T16:15 282 -1

с дельтами в последнем столбце, так чтобы найти, что самые большие просто передают его по каналу к виду

$ awk 'BEGIN{last=0}{delta[NR]=$2-last; last=$2; print $0" "delta[NR]}' file | sort -k3n
2003-07-03T16:15 282 -1
2003-07-03T16:10 283 4
2003-07-03T16:05 279 279

, но для миллиона записей это будет действительно медленно. Я, вероятно, использовал бы mysql или другой дб вместо этого.

4
27.01.2020, 20:47

Теги

Похожие вопросы