リモートマシンにインストールされているプログラムを表示しますか?


19

リモートマシンにインストールされているプログラムを表示する簡単で軽量な方法があるかどうか疑問に思っていましたか?Spiceworksを使用したいのですが、スクリプトのようなもっと軽量なものが欲しいです。WMICを少し遊んでみて、自分のコンピューター用のプログラムの一覧を取得できますが、リモートコンピューターでも同じことができるかどうかわかりません。何か案は?

編集:OSを忘れて申し訳ありません。ほとんどの場合Windows XPと7を使用しています。Windows7を使用しています。現在コンピューターを使用しているユーザーが知らないうちにバックグラウンドで実行されるものを探しています。人々が仕事をしている間、仕事中にそれをできるようにしたいと思っています。私はLinuxについてもっと学び、いつかは個人的に変更する計画があるので、Linuxの回答に感謝しています。


7
マシンのOSを知るのに役立ちます。
チャフィンク

なぜプログラムだけなのか?システム上に他の著作物が存在する可能性があります(フォントファイルとmp3は明らかなケースです)
symcbean

@symcbean私が尋ねる主な理由は、ライセンスの取得です。私たちにはいくつかのプログラムがあり、その中にはライセンスが一杯しかありません。他のユーザーがプログラムを使用できるようにどこかでアンインストールできるか、または新しいライセンス。他のことについては、後で検討します。
モボジョ

回答:


19

SysinternalsツールPSinfoのいずれかを使用できます

http://technet.microsoft.com/en-us/sysinternals/bb897550

PsInfo v1.77-ローカルおよびリモートのシステム情報ビューアCopyright(C)2001-2009 Mark Russinovich Sysinternals-www.sysinternals.com

PsInfoは、ローカルまたはリモートのWindows NT / 2000 / XPシステムに関する情報を返します。

使用法:psinfo [-h] [-s] [-d] [-c [-t delimiter]] [filter] [\ computer [、computer [、..]] | @file [-u Username [-p Password ]]]

 -u        Specifies optional user name for login to
           remote computer.
 -p        Specifies password for user name.
 -h        Show installed hotfixes.
 -s        Show installed software.
 -d        Show disk volume information.
 -c        Print in CSV format
 -t        The default delimiter for the -c option is a comma,
           but can be overriden with the specified character. Use
           "\t" to specify tab.
 filter    Psinfo will only show data for the field matching the

フィルタ。たとえば、「psinfo service」はサービスパックフィールドのみをリストします。computer PsInfoに、指定したリモートコンピューターでコマンドを実行するように指示します。コンピューター名を省略すると、PsInfoはローカルシステムでコマンドを実行し、ワイルドカード(\ *)を指定すると、PsInfoは現在のドメイン内のすべてのコンピューターでコマンドを実行します。@file PsInfoは、指定されたファイルにリストされているコンピューターに対して実行されます。

発行中

PSinfo -s \\コンピューター名

リモートコンピュータにインストールされているものがわかります。


11

rpmベースのLinuxディストリビューションでは、次を実行できます。

ssh <user-who-can-run-rpm>@<remote.host> 'rpm -qa | sort'

debベースの配布の場合、これをsshコマンドに渡します。

'dpkg-query -l | sort'

Gentooの場合(Monksyから提供されたコメントによる):

'qpkg -I | sort'

Solarisの場合:

'pkginfo -i | sort'

AIXの場合:

'lslpp -a all | sort'

1
Gentoo:genooにgentoolkitがインストールされている場合、インストールされているすべてのパッケージを次のコマンドで確認できます。「qpkg -I」
-monksy

Linuxマシンでこれを使用して、Windowsマシンの情報を表示できますか、それともLinuxからLinux専用ですか?
モボジョ

@Mobojo-* nixマシンからWindowsマシンに同様のコマンドを実行できるかどうか不明。ただし、元のマシンから* nixへのこれらのコマンドを実行するには、sshクライアントを使用できる必要があります。ただし、
ウォーレン

6

WMICは、デフォルトで、Administratorsグループの一部であるアカウントでリモートで使用できます。読み取り専用のWMIアクセスを通常のユーザーに委任できます。

SNMPも使用できます-読み取り専用コミュニティを設定するだけです。hrSWInstalledテーブルを参照する必要があります。snamwalk -c public -v2c server_IP hrSWInstalled

参照:http : //technet.microsoft.com/en-us/library/bb742610.aspx


6

HKLM \ Software \ Microsoft \ Windows \ Uninstallレジストリキーに接続し、キーを取得し、表示名を取得し、テキストファイルに送信するPowerShellスクリプトを次に示します。

$temparray=@()
$MachineName = 'somecomputername'
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey([Microsoft.Win32.RegistryHive]::'LocalMachine', $MachineName)

#connect to the needed key :

$regKey= $reg.OpenSubKey("software\Microsoft\Windows\currentversion\uninstall\" )

#and list the properties :

$programs = $regkey.GetSubKeyNames()
foreach ($program in $programs)
{   
    $regKey2 = $regKey.OpenSubKey($program)

    $temparray +=  $regKey2.GetValue("DisplayName")
}
$temparray |Sort-Object |Out-File -FilePath "C:\testinstalledprograms.txt" -Force

2

これを行うプログラムは百万あります。他のものより簡単で軽量なものもあります。

これを行う無数のプログラムの1つを次に示します。

http://managepc.net/


1

Windowsマシンの場合、スケジュールされたジョブで "WinAudit"(無料、検索するだけ)を実行できます。HTMLまたはテキストレポートなどを生成し、それらをネットワークドライブに保存してリモートコンピューターから表示できます。

または:

リモートデスクトップ。接続し、ローカルマシンであるかのように使用します。* nixでも機能します。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.