Сохраните счет от файла журнала

/boot/message просто сообщение, отображенное, когда диспетчер начальной загрузки загружается. Это могло быть что-либо, что Вы любите, просто простой текстовый файл с приветствием:

Хорошо проведите время!

Или что-то как этот. Необходимо смочь проигнорировать его вполне безопасно. Вы могли также создать его сами. Самая легкая вещь состояла бы в том, чтобы просто работать

sudo touch /boot/message 
2
11.03.2015, 14:24
3 ответа

Вы можете использовать awk для подсчета. Хотя, если ничего сложнее, вы можете использовать

tail -f output.log | awk '/Thread started/{n++}/Thread finished/{n--} END { printf ("%d Threads are running\n", n)}' output.log

Лучше использовать Watch следующим образом:

watch -n.2 -x awk '/Thread started/{n++}/Thread finished/{n--} END { printf ("%d Threads are running\n", n)}' output.log

The -n.2 будет обновляться каждый 0.2s, как это появится в верхней части экрана.

3
27.01.2020, 21:54

Вы можете попробовать следующие Bash Script :

#!/bin/bash
start_count=$(grep -c "started" /path/to/output.log)
finish_count=$(grep -c "finished" /path/to/output.log)
echo "$((start_count - finish_count)) threads are running"

Это учитывает любые ранее бегущие потоки, которые вышли из приточной области хвоста Отказ Здесь мы посчитали вхождения «начата» и «закончено» в файле, а затем просто вычтите значения, чтобы получить результат. Если вы хотите, вы выбираете любой диапазон линий (например хвост -30 / патрубок/О /Output.log) Чтобы прочитать, а не весь файл, а затем найти результат, учитывая эти строки.

2
27.01.2020, 21:54

Попробуйте запустить этот скрипт,

a=$(grep started output.log | wc -l)

b=$(grep finished output.log | wc -l)

echo Total Running threads: "$[$a-$b]"

создать скрипт Bash и вставьте вышеуказанные линии в нем. Вы получите бегущие потоки.

1
27.01.2020, 21:54

Теги

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