Lista zainstalowanych programów w CMD


 

Pamiętacie mój artykuł o generowaniu listy zainstalowanych sterowników? Dzisiaj temat bardzo blisko z nim związany, czyli „oprogramowanie”.

Informacja o zainstalowanych programach, szczególnie w firmie, jest bardzo istotna na przykład gdy:

  • re-instalujemy komputer użytkownika i chcemy wiedzieć, jakie programy on posiadał, aby oddać mu maszynę taką, jak przed instalacją :)
  • dokumentujemy informacje o zainstalowanych programach na serwerach wypadek katastrofy (tzw. „disaster recovery plan”),
  • chcemy kontrolować zainstalowane oprogramowanie w celach bezpieczeństwa,
  • zliczamy ilość zużytych licencji,
  • któryś ze skryptów, musi wiedzieć czy dany program jest na liście, aby wykonać (lub nie) swoje dalsze działanie np. podniesienie wersji.

Niestety nie każda firma posiada u siebie zaawansowane narzędzia, które automatycznie zbierają te informacje z komputerów ( jak choćby Microsoft’owy SCCM). Może tez się zdarzyć, że posiadany system czasowo nie działa, a lista programów potrzebna jest „na teraz”. W takiej sytuacji prosty skrypt w CMD może okazać się bardzo pomocny:)

Jak w wierszu poleceń wygenerować listę zainstalowanych programów?

Od razu odsyłam Was do WMI:

wmic product

Efekt będzie podobny do tego (ale o wiele dłuższy):

1               Microsoft Visual C++ 2005 ATL Update kb973923 – x86 8.0.50727.4053                           Microsoft Visual C++ 2005 ATL Update kb973923 – x86 8.0.50727.4053                                                                                                   {770657D1-A113-3C07-8E44-1C83AH895108}  20120124                                                                                     c:\58644c999d4b26a281\                                                                                 5             1033      c:\Windows\Installer\245f07.msi   Microsoft Visual C++ 2005 ATL Update kb973923 – x86 8.0.50727.4053                           c:\Windows\Installer\245f07.msi   {51CB1106-D293-4FB7-9C1D-83B441116451}  atl80sp1_kb973923.msi                                                                                                                                                                                                                                                                                                        Microsoft Corporation           8.0.50727.4053        2
1               Skype Toolbars                                                                               Skype Toolbars                                                                               http://www.skype.com/                                                   {981029E1-7FC1-4CF3-A039-6F666621921A}  20101126                                                                                     C:\ProgramData\Skype\{D102C4BA-F105-437A-8049-DB24763BBE36}\                                           5             1033      C:\Windows\Installer\d7aa.msi     Skype Toolbars                                                                               C:\Windows\Installer\d7aa.msi     {97DCA425-E553-11113-8F5B-F507650167AA}  SkypeToolbars.msi                                                                                                                                                                                                                                                                                                            Skype Technologies S.A.         1.0.4051              2

1               Windows Live Remote Service Resources                                                        Windows Live Remote Service Resources                                                                                                                                {480F28F0-8BCE-767A-A51E-0D4B7D1EE2EF}  20101126                                                                                     C:\Program Files (x86)\Common Files\Windows Live\.cache\bc9527ed1cb8d9c0e\                             5             21        C:\Windows\Installer\d7f7.msi     Windows Live Remote Service Resources                                                        C:\Windows\Installer\d7f7.msi     {4796CB65-BE5F-4058-A3A5-BDAB0B35C1A1}  wlremoteservicelang-amd64.msi

Raport jest bardzo szczegółowy, bo jak widać, zawiera między innymi nazwę, wersję i ścieżkę. Wygenerowanie go może zająć chwilkę w zależności od ilości wpisów i będzie dość trudny do odczytania. Warto wygenerować go w formacie CSV i zapisać w pliku:

wmic product get /format:csv >raport.csv

Stąd już tylko malutki kroczek aby “uczłowieczyć” go w jakimś innym narzędziu – choćby Excelu.

Do łączenia ze zdalnym komputerem polecam PSEXEC z pakietu PSTOOLS:

psexec \\komputer_zdalny wmic product get /format:csv > \\serwer\udział_sieciowy\%computername% raport.csv

Do sprawdzenia wielu komputerów na raz:

psexec @lista_komputerów.txt wmic product get /format:csv >> \\serwer\udział_sieciowy\%computername% raport.csv

Gdybyście jednak potrzebowali czegoś prostego, zbierającego same nazwy programów, to w pakiecie PSTOOLS znajduje się PSINFO.EXE, który ma flagę odpowiadającą za samo wyświetlenie nazw programów:

psinfo –s

Łączenie ze zdalnym komputerem wykonamy w ten sposób:

psinfo \\komputer_zdalny -s

Zebranie listy zainstalowanych programów wielu maszyn po kolei:

psinfo @lista.txt –s

A Wy, jaki macie sprawdzony sposób na zbieranie informacji o zainstalowanych programach?


Podobne Tematy:

  • unsigned

    sprawdzony sposób to Dodaj / Usuń programy :D ok błysnąłem ciekawym patentem ;)

    • Thank you, Captain Obvious! :)

    • Dariusz Góra

      takie komentarze zawsze powodują wiele radości ;)

  • Niby captain obvious ale czy dodaj/usuń programy pokazuje naprawdę wszystkie programy ?

    • Łukasz Skalikow

      Wystarczy porównać listę z WMI, PSINFO i Add/Remove Programs any wiedzieć (uwaga, spoiler! ) .. ŻE NIE :)

  • Anonim

    A co jeśli psinfo -s daje mi tak długą listę, że nie mieści się w konsoli?

    • Dariusz Góra

      Opcji jest kilka, w zależności od tego co dla Ciebie wygodniejsze:
      – używasz rury – psinfo-s | more
      – zwiększasz wysokość buforu ekranu w aktywnym okienku cmd
      – przekierowujesz wynik do pliku – psinfo -s > psinfo.txt

      http://spece.it/windows-serwer-artykuly/przekierowanie-wyniku-polecenia-zcmd-dopliku-tekstowego-lubschowka

  • Piotr Truś

    Mam taki problemik.
    Muszę przeprowadzić w firmie audyt oprogramowania.
    Pobrałem pstools i uruchamiając np psinfo.exe pojawia mi się na ułamek sekundy okno a później znika.
    Co z tym mogę zrobić?
    Kolejną sprawą jest to, że jeśli wygeneruję wmic product get /format:csv >raport.csv
    Nie mam na tej liście np antywirusa czy 7zip
    Jak pobrać wszystkie informacje o zainstalowanych programach.
    Bardzo proszę o szybką pomoc.
    Pozdrawiam Piotr Truś

    • Łukasz Skalikow

      Niektóre programy mogą rzeczywiście nie pojawiać się na liście „add/remove programs”.
      Jeżeli potrzebujesz bardzo dokąłdnych wyników, a nie masz u siebie zaawansowanych narzedzi typu SCCM, musisz uśmiechnąć się w strone programów firm 3cich. W tym wątku, na forum goldenline, pada sporo nazw darmowych i komercyjnych programów do wykonania profesojonalnego audytu oprogramowania.

      http://www.goldenline.pl/forum/494086/najlepsze-programy-do-inwentaryzacji-oprogramowania-i-sprzetu/