Список установленных программ
Модератор: Модераторы
Список установленных программ
Как получить список установленных программ в Linux?
В rpm-дистрибутивах:
В deb-дистрибутивах:
В дистрибутивах с установкой из исходников, типа Gentoo, будет что-то другое.
В Lazarus можно вызвать указанные команды через TProcess и проанализировать их вывод.
Код: Выделить всё
rpm -qaВ deb-дистрибутивах:
Код: Выделить всё
dpkg –-get-selectionsВ дистрибутивах с установкой из исходников, типа Gentoo, будет что-то другое.
В Lazarus можно вызвать указанные команды через TProcess и проанализировать их вывод.
-
alex208210
- постоялец
- Сообщения: 207
- Зарегистрирован: 12.05.2010 13:16:51
function Tform1.shellv(commd:string):ansistring;
var
S : TProcess;
Buf: ansistring;
Count : longint;
begin
S:=TProcess.Create(Nil);
S.Commandline:=commd;
S.Options:=[poUsePipes,poNoConsole];
S.execute;
SetLength(buf, 1000);
Repeat
Count:=s.output.read(buf[1], length(buf));
result:=result + Copy(buf, 1, Count-1);
until Count=0;
S.Free;
end;
memo1.lines.add(shellv('rpm -qa')); {rpm}
memo1.lines.add(shellv('dpkg –-get-selections')); {deb}
memo1.lines.add(shellv('emerge -pve world')); {gentoo}
memo1.lines.add(shellv('equo query list installed')); {sabayon}
лучше всего делать вывод в файл например так shell('rpm -qa > /tmp/1'); а потом парсить файл. Функция shell естьв модуле unix
var
S : TProcess;
Buf: ansistring;
Count : longint;
begin
S:=TProcess.Create(Nil);
S.Commandline:=commd;
S.Options:=[poUsePipes,poNoConsole];
S.execute;
SetLength(buf, 1000);
Repeat
Count:=s.output.read(buf[1], length(buf));
result:=result + Copy(buf, 1, Count-1);
until Count=0;
S.Free;
end;
memo1.lines.add(shellv('rpm -qa')); {rpm}
memo1.lines.add(shellv('dpkg –-get-selections')); {deb}
memo1.lines.add(shellv('emerge -pve world')); {gentoo}
memo1.lines.add(shellv('equo query list installed')); {sabayon}
лучше всего делать вывод в файл например так shell('rpm -qa > /tmp/1'); а потом парсить файл. Функция shell естьв модуле unix
