 alex208210 » 01.06.2011 08:54:17
 alex208210 » 01.06.2011 08:54:17 
			
			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