Добавляя к ответу Шеппи, я бы не рекомендовал сразу переходить с любой другой версии на другую, кроме следующей версии.
Версия ядра GNU/Linux, которая у вас есть или используется, — 3.16, которая используется в jessie.
https://packages.debian.org/jessie/linux-image-3.16.0-4-amd64
Шеппи использует версию 4.9.0 -3, которая используется в растяжке
https://packages.debian.org/uk/stretch/kernel/linux-image-4.9.0-3-amd64
и я использую то, что сейчас используется в buster.
─[$] uname -a
Linux debian 4.11.0-1-amd64 #1 SMP Debian 4.11.6-1 (2017-06-19) x86_64 GNU/Linux
https://packages.debian.org/sid/linux-image-4.11.0-2-amd64
[$] apt-cache policy linux-image-4.11.0-2-amd64
linux-image-4.11.0-2-amd64:
Installed: (none)
Candidate: 4.11.11-1+b1
Version table:
4.11.11-1+b1 1
1 http://httpredir.debian.org/debian unstable/main amd64 Packages
В этом нет большого преимущества, если у вас нет одного из новейших процессоров или у вас есть ошибки в старом выпуске ядра, и вы знаете, что они изменены в любой из более новых версий.
Если вы все же хотите обновиться, я бы посоветовал отредактировать ваш /etc/apt/sources.list, указав имя более новой версии, выполнить apt update
, обновить индекс, а затем установить более новую версию ядра, перезагрузить компьютер. системы и видим, что все в порядке. Вы также «могли бы» не торопиться и обновлять компоненты один за другим, но это долгий процесс, и возможна поломка. Даже если все пойдет по-твоему, это отнимет много времени.
С другой стороны, если вы только что установили stretch, вы получите исправления ошибок при разбиении на разделы для выбранной вами файловой системы, а также многое другое.
Еще одна вещь, которую вы могли бы и должны сделать, это-
$ apt list --installed | less
Надеюсь, вышеизложенное дало вам пищу для размышлений:)
Это тривиальная задача для awk.
awk '/Zone/{print $2} /Population/{print $3}' file
Если в текущей строке есть Zone
, печатает второе поле; для Population
печатает третий.
Попробуйте это,
awk '/Zone/ {print $2;getline; print $3}' file
A
500
B
600
C
400
getline
читает следующую строку после текущей строки. Использование grep
и perl -совместимых регулярных выражений (PCRE):
grep -Po 'Zone \K.*|[0-9]+(?= unit)' file
-P
включить perl -совместимые регулярные выражения -o
печатать только совпадающие части
Zone \K.*
соответствует любым символам (.*
), следующим за Zone
, плюс пробел. Все, что до \K
не печатается (ноль -ширина положительный просмотр назад ).
|
или [0-9]+(?= unit)
соответствует одной или нескольким цифрам, за которыми следует пробел и unit
. (?= unit)
является утверждением положительного просмотра вперед с нулевой -шириной, и его образец (символ пробела иunit
)также не печатаются. С подстановкой команды sed
:
$ sed -En '/Zone/N; s/Zone ([A-Z]+).+ ([0-9]+).*/\1\n\2/p' file
A
500
B
600
C
400
Для покрытия случая «Имя зоны» + «Значение области»:
$ sed -En '/Zone/N;N; s/Zone ([A-Z]+).+ ([0-9]+) sq.*/\1\n\2/p' file
A
150
B
200
C
100