3 ms·
For Windows, something like wmic[1] /output:C:\this.box.installed.txt product get name,version or Get-WmiObject[2] -Class Win32_Product | Select-Ob
by Maursault 4y ago
For Windows, something like
wmic[1] /output:C:\this.box.installed.txt product get name,version
or
Get-WmiObject[2] -Class Win32_Product | Select-Object -Property Name > C:\this.box.installed.txt
For macOS,
system_profiler[3] SPApplicationsDataType > this.mac.installed.txt
if too slow, a simple find command is much faster,
find / -name \*.app > this.mac.installed.txt
(but this will not catch binaries)
For Linux (assuming Red Hat or variant)
rpm[4] -qa > this.thing.installed.txt
(which only catches the managed packages, and I have no idea how to catch everything manually installed)
But in all cases better to push a script out from whatever LDAP-implementation of device management, Active Directory, MECM, JAMF, or whathaveyou, use unique file naming and drop the files in a centrally shared folder.
[1] https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmic https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmic
[2] https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-wmiobject?view=powershell-5.1 https://learn.microsoft.com/en-us/powershell/module/microsof...
[3] https://ss64.com/osx/system_profiler.html https://ss64.com/osx/system_profiler.html
[4] https://man7.org/linux/man-pages/man8/rpm.8.html https://man7.org/linux/man-pages/man8/rpm.8.html