Значение Грепа как число после & ldquo; Всего: & rdquo;

Я думаю, что верхние сортировки обрабатываются при использовании процессора, и, очевидно, не все они подходят на экране. Запустите «ps aux», чтобы получить список всех процессов, затем прокрутите вверх и вниз, чтобы увидеть использование памяти. Другой способ - использовать htop (установить его из Software Center), затем нажать f6 для сортировки и выбрать сортировку по MEM%.

0
задан 13 August 2017 в 16:03

12 ответов

У меня есть это простое использование команд cut и grep:

cut -d: -f 2 mycut.txt | grep -Eo "[[:digit:]]{3}\.[[:digit:]]{3}"
1
ответ дан 22 May 2018 в 19:30

У меня есть это простое использование команд cut и grep:

cut -d: -f 2 mycut.txt | grep -Eo "[[:digit:]]{3}\.[[:digit:]]{3}"
1
ответ дан 18 July 2018 в 08:35

У меня есть это простое использование команд cut и grep:

cut -d: -f 2 mycut.txt | grep -Eo "[[:digit:]]{3}\.[[:digit:]]{3}"
1
ответ дан 24 July 2018 в 19:07

Самый простой способ - использовать awk, так как номер поля исправлен.

awk '/Speed:/ {print $3}' screenlog.0

$3 - это число столбцов.

pilot6@Pilot6:~$ echo "Total Speed: 118.604 Mh/s, Total Shares: 5...." | awk '/Speed:/ {print $3}'
118.604

Это даст вам все строки, а не последние 3. Вы можете использовать tail -n3 для фильтрации последнего 3 строки:

tail -n3 screenlog.0 | awk '/Speed:/ {print $3}'
1
ответ дан 22 May 2018 в 19:30
  • 1
    Образец входного сигнала OP использует точки ... xy... в начале и конце, awk не предоставляет его всегда в 3-м полевом мышлении или даже в разных полях в разных строках – αғsнιη 13 August 2017 в 16:38
  • 2
    Я написал это в своем ответе. Я не думаю, что в журнале есть разные поля. Ваше решение является более универсальным, но в большинстве случаев числа полей не меняются. – Pilot6 13 August 2017 в 16:45

Вы можете использовать grep с инструментами look-behind и look-ahead из PCRE в grep следующим образом:

tail -n3 in.txt | grep -Pzo '(?<=Total Speed: ).*?(?=Mh/s)'
118.604
118.604
118.604

Или, короче говоря, вы можете использовать \K уведомить в lookbehind:

grep -Pzo "Total Speed: \K.*(?=Mh/s)"
1
ответ дан 22 May 2018 в 19:30
[F1]
0
ответ дан 22 May 2018 в 19:30
[F1]
0
ответ дан 18 July 2018 в 08:35

Самый простой способ - использовать awk, так как номер поля исправлен.

awk '/Speed:/ {print $3}' screenlog.0

$3 - это число столбцов.

pilot6@Pilot6:~$ echo "Total Speed: 118.604 Mh/s, Total Shares: 5...." | awk '/Speed:/ {print $3}' 118.604

Это даст вам все строки, а не последние 3. Вы можете использовать tail -n3 для фильтрации последнего 3 строки:

tail -n3 screenlog.0 | awk '/Speed:/ {print $3}'
1
ответ дан 18 July 2018 в 08:35

Вы можете использовать grep с инструментами look-behind и look-ahead из PCRE в grep следующим образом:

tail -n3 in.txt | grep -Pzo '(?<=Total Speed: ).*?(?=Mh/s)' 118.604 118.604 118.604

Или, короче говоря, вы можете использовать \K уведомить в lookbehind:

grep -Pzo "Total Speed: \K.*(?=Mh/s)"
1
ответ дан 18 July 2018 в 08:35
[F1]
0
ответ дан 24 July 2018 в 19:07

Самый простой способ - использовать awk, так как номер поля исправлен.

awk '/Speed:/ {print $3}' screenlog.0

$3 - это число столбцов.

pilot6@Pilot6:~$ echo "Total Speed: 118.604 Mh/s, Total Shares: 5...." | awk '/Speed:/ {print $3}' 118.604

Это даст вам все строки, а не последние 3. Вы можете использовать tail -n3 для фильтрации последнего 3 строки:

tail -n3 screenlog.0 | awk '/Speed:/ {print $3}'
1
ответ дан 24 July 2018 в 19:07
  • 1
    Образец входного сигнала OP использует точки ... xy... в начале и конце, awk не предоставляет его всегда в 3-м полевом мышлении или даже в разных полях в разных строках – αғsнιη 13 August 2017 в 16:38
  • 2
    Я написал это в своем ответе. Я не думаю, что в журнале есть разные поля. Ваше решение является более универсальным, но в большинстве случаев числа полей не меняются. – Pilot6 13 August 2017 в 16:45

Вы можете использовать grep с инструментами look-behind и look-ahead из PCRE в grep следующим образом:

tail -n3 in.txt | grep -Pzo '(?<=Total Speed: ).*?(?=Mh/s)' 118.604 118.604 118.604

Или, короче говоря, вы можете использовать \K уведомить в lookbehind:

grep -Pzo "Total Speed: \K.*(?=Mh/s)"
1
ответ дан 24 July 2018 в 19:07

Другие вопросы по тегам:

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