Пакеты, которые устанавливаются как зависимости, обычно помечаются как автоматические; вы можете видеть это с помощью
apt-mark showauto xterm
Если выводится xterm
, пакет был установлен автоматически; в противном случае он был установлен вручную.
Вы можете использовать aptitude
, чтобы увидеть, какие зависимости удерживают установленный пакет:
aptitude why xterm
aptitude why
также явно скажет, был ли пакет установлен вручную.
Вы можете использовать csplit
для разделения файла на основе шаблона -:
csplit <file> <split pattern> <repetiotions>
.:
csplit -z datafile '/^........20/' '{*}'
Пояснение:
-z
:не создавать пустой файл (поскольку вы начинаете с шаблона в первой строке, будет файл с «0-й» строки до совпадения шаблона
'/^........20/'
:Шаблон для разделения, где ^
= начало строки, .
= любой символ (8 раз)
{*}
:повторяй как можно чаще
Вы можете использоватьawk
:
awk 'BEGIN{filename=0};$0 ~ /^........20....$/{filename++};{print >> "file"filename}' input_file
При предоставленных входных данных будет получено:
file1
:
0000000020DTL0
00000000510000
00000000520000
00000000530000
00000000510000
00000000520000
00000000530000
00000000800000
file2
:
0000000020DTL0
00000000510730
00000000520000
0000000053 000
00000000510000
00000000520000
00000000530000
00000000800000