Rating@Mail.ru
IPB
Etersoft - from Windows to Linux
Etersoft
решения для перехода
с Windows на Linux
Дружественные сайты: alv.me и Rus-Linux.net

Здравствуйте, гость ( Вход | Регистрация ) Поиск · 

> 

Темы от студентов с запросами готовых решений по заданиям закрываются не глядя.

 
Reply to this topic Start new topic
> РЕШЕНО - Вывести список установленных пакетов в строку, Просмотр списка установленных пакетов одной строкой
Institut
bookmark
gyfbbdvkffmrljmmmwd
Nov 7 2017, в 20:56
Сообщение #1


Завсегдатай
Иконка группы

Сообщений: 249

Вставить имя   :   Цитата

ОС: debian Stretch + xfce
Город: /home

Группа: Участники

Автор темы
Добрый день. Возникла необходимость просмотреть и записать на флешку, что-бы перенести в другое место, список установленных пакетов.
Например.
Делаю так
Код
pacman -Q | grep virtualbox | sed ':a;N;$!ba;s/\n/ /g'

"Выход"
Код
virtualbox 5.2.0-1 virtualbox-ext-oracle 5.2.0-1 virtualbox-guest-iso 5.2.0-1 virtualbox-host-dkms 5.2.0-1

Но цифры мне не нужны, только имена. Переделал так
Код
pacman -Q | grep virtualbox | awk '{ print $1 }' | sed ':a;N;$!ba;s/\n/ /g'

"Вывод"
Код
virtualbox virtualbox-ext-oracle virtualbox-guest-iso virtualbox-host-dkms

Вроде то, что нужно. Вопрос - а можно-ли от awk избавиться, только через sed сделать?
Количество пакетов везде разное.
Go to the top of the page
 
+Quote Post
Bizdelnick
bookmark
gyfbbdvkffmrljmmmwd
Nov 7 2017, в 21:16
Сообщение #2


grammatikführer
Иконка группы

Сообщений: 12939

Вставить имя   :   Цитата

ОС: Debian GNU/Linux
Город: Санкт-Петербург

Группа: Модераторы разделов

А как выглядит необработанный вывод pacman -Q?


--------------------
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
команда
новичок
нюанс
приемлемо
проблема
пробовать
трафик
Go to the top of the page
 
+Quote Post
Institut
bookmark
gyfbbdvkffmrljmmmwd
Nov 7 2017, в 21:21
Сообщение #3


Завсегдатай
Иконка группы

Сообщений: 249

Вставить имя   :   Цитата

ОС: debian Stretch + xfce
Город: /home

Группа: Участники

Автор темы
Код
pacman -Q | grep virtualbox                      
virtualbox 5.2.0-1
virtualbox-ext-oracle 5.2.0-1
virtualbox-guest-iso 5.2.0-1
virtualbox-host-dkms 5.2.0-1


Списки пакетов идут строками, ищу только нужные мне пакеты.
Go to the top of the page
 
+Quote Post
Vascom
bookmark
gyfbbdvkffmrljmmmwd
Nov 7 2017, в 22:33
Сообщение #4


Знаток линукса
Иконка группы

Сообщений: 774

Вставить имя   :   Цитата

ОС: Fedora 27
Город: Moscow

Группа: Участники

Можно вместо awk использовать cut -d " " -f1


--------------------
Помощь по Fedora и RFRemix.


Спасибо сказали:
Go to the top of the page
 
+Quote Post
SLEDopit
bookmark
gyfbbdvkffmrljmmmwd
Nov 7 2017, в 23:29
Сообщение #5


фанат консоли (=
Иконка группы

Сообщений: 4342

Вставить имя   :   Цитата

ОС: GNU/Debian, RHEL

Группа: Модераторы разделов

Цитата(Institut @ 7th November 2017 - в 20:56) *
Вопрос - а можно-ли от awk избавиться, только через sed сделать?
Можно заодно и от grep'а избавиться:
Код
pacman -Q | sed -n '/virtualbox/{s/ .*//;H};${g;s/\n/ /g;p}'

С вашим примером входных данных это выглядит примерно так:
Код
$ cat 222                                                                                                                                                              
dhskhksjdhk 5.2.0-1                                                                                                                                                      
virtualbox 5.2.0-1
virtualbox-ext-oracle 5.2.0-1
virtualbox-guest-iso 5.2.0-1
dhsjkdhjsk 5.2.0-1
virtualbox-host-dkms 5.2.0-1
$ sed -n '/virtualbox/{s/ .*//;H};${g;s/\n/ /g;p}' 222                                                                                                                
virtualbox virtualbox-ext-oracle virtualbox-guest-iso virtualbox-host-dkms


--------------------
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.


Спасибо сказали:
Go to the top of the page
 
+Quote Post
Bizdelnick
bookmark
gyfbbdvkffmrljmmmwd
Nov 7 2017, в 23:48
Сообщение #6


grammatikführer
Иконка группы

Сообщений: 12939

Вставить имя   :   Цитата

ОС: Debian GNU/Linux
Город: Санкт-Петербург

Группа: Модераторы разделов

Как вариант: pacman -Q | sed -nr 's/(^virtualbox\S*).*/\1/;$!T;$Ta;H;:a;${g;y/\n/ /;p}'
Хотя с одним awk проще: pacman -Q | awk '/^virtualbox/{printf "%s ", $1 }; END{ print "" }'
Upd. Вариант SLEDopitа с sed лучше моего.


--------------------
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
команда
новичок
нюанс
приемлемо
проблема
пробовать
трафик


Спасибо сказали:
Go to the top of the page
 
+Quote Post
Alexxx
bookmark
gyfbbdvkffmrljmmmwd
Nov 8 2017, в 15:19
Сообщение #7


--==XXX==--
Иконка группы

Сообщений: 892

Вставить имя   :   Цитата

ОС: Archlinux current
Город: Владивосток

Группа: Участники

Как вариант:
Код
a=$(pacman -Qq | grep virtualbox)
echo $a

Можно также "pacman -Qsq virtualbox" -- дольше отрабатывает только.
Go to the top of the page
 
+Quote Post
SLEDopit
bookmark
gyfbbdvkffmrljmmmwd
Nov 8 2017, в 21:39
Сообщение #8


фанат консоли (=
Иконка группы

Сообщений: 4342

Вставить имя   :   Цитата

ОС: GNU/Debian, RHEL

Группа: Модераторы разделов

Цитата(Alexxx @ 8th November 2017 - в 15:19) *
Код
a=$(pacman -Qq | grep virtualbox)
echo $a
тогда уж
Код
echo $(pacman -Qq | grep virtualbox)


--------------------
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Go to the top of the page
 
+Quote Post
Institut
bookmark
gyfbbdvkffmrljmmmwd
Nov 8 2017, в 21:58
Сообщение #9


Завсегдатай
Иконка группы

Сообщений: 249

Вставить имя   :   Цитата

ОС: debian Stretch + xfce
Город: /home

Группа: Участники

Автор темы
Цитата
pacman -Q | sed -n '/virtualbox/{s/ .*//;H};${g;s/\n/ /g;p}'

Ага, оно работает. Коротко и сердито. Спасибо.
Spoiler:
И понимаешь для себя, что ещё надо много чему учиться.
Go to the top of the page
 
+Quote Post
RusWolf
bookmark
gyfbbdvkffmrljmmmwd
Nov 9 2017, в 08:11
Сообщение #10


Завсегдатай
Иконка группы

Сообщений: 239

Вставить имя   :   Цитата

ОС: ArchLinux 86_64
Город: Краснодар

Группа: Участники

Прикрепленный файл  ________________2017_11_09_08_09_56.png ( 56.29 килобайт ) Кол-во скачиваний: 11
Go to the top of the page
 
+Quote Post

 Reply to this topic Start new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 24th November 2017 - в 10:38




Rating@Mail.ru