Можно использовать grep
получить строки и grep -c
получить количество строк. Если Вам не нравится работать grep
два раза можно использовать tee
и замена процесса (следующее является синтаксисом удара):
grep abc-ERROR: input.txt | tee >( wc -l )
Я наконец понял это. Ядро отображает только 2 сегмента. Третий кусок - это часть одного из двух загруженных ядром. Компоновщик времени выполнения, программа, названная в заголовке INTERP, которая сейчас для меня /usr/lib/ld-2.24.so, изменяет разрешения на сопоставления с помощью mprotect ()
, чтобы глобальные переменные для чтения / записи, глобальные переменные только для чтения и текстовый сегмент для чтения / выполнения. Вы можете увидеть, как это происходит, используя strace
, но это легко упустить, поскольку это всего лишь один вызов mprotect ()
.
Это было вызвано не изменением ядра, а изменением GNU lib C.
Привет, у меня было такое же замешательство, как и у вас, я копался в Интернете и нашел это, я думаю, это тоже ответ на вашу ошибку. ссылка: https://stackoverflow.com/questions/33756119/relationship-between-vma-and-elf-segments
для shrot:
00400000-0040b000 r-xp 00000000 08:02 1186756 /usr/bin/cat
**use for store text code and const varibles**
0060a000-0060b000 r--p 0000a000 08:02 1186756 /usr/bin/cat
**use for GNU_RELRO relocated info**
0060b000-0060c000 rw-p 0000b000 08:02 1186756 /usr/bin/cat
use for bss data segment
надеюсь, это полезно