こんにちは私は私の窓10で実行されているすべてのプロセスのリストを取得し、MD5アルゴリズムを通してそれらを実行することができる必要があります。 PowerShellでこれを自動的に行う方法はありますか?
任意の助けは非常に高く評価されています
.exe
実行中のファイル
こんにちは私は私の窓10で実行されているすべてのプロセスのリストを取得し、MD5アルゴリズムを通してそれらを実行することができる必要があります。 PowerShellでこれを自動的に行う方法はありますか?
任意の助けは非常に高く評価されています
.exe
実行中のファイル
回答:
これはそれほど簡単ではありません。 PowerShellはMD5ハッシュを使用できます ファイル ネイティブに Get-FileHash
ただし、文字列ではありません。
幸いなことに、MSはソリューションを提供しています ここに 。
#http://jongurgul.com/blog/get-stringhash-get-filehash/
Function Get-StringHash([String] $String,$HashName = "MD5")
{
$StringBuilder = New-Object System.Text.StringBuilder
[System.Security.Cryptography.HashAlgorithm]::Create($HashName).ComputeHash([System.Text.Encoding]::UTF8.GetBytes($String))|%{
[Void]$StringBuilder.Append($_.ToString("x2"))
}
$StringBuilder.ToString()
}
その機能をコピーしてPowerShellプロンプトに貼り付けます。その関数は Get-StringHash
そのPowerShellセッション用に保存されます。
次のように入力して「test」という単語をハッシュしているMD5をテストします。
Get-StringHash "test" "MD5"
そして、あなたは以下のMD5ハッシュを取得する必要があります。
098f6bcd4621d373cade4e832627b4f6
それが済んだら、その関数を使うことができます。 Get-Process
下記のようにプロセス名と名前のMD5を取得します。
get-process | ForEach-Object {write-host $_.Name ; Get-Stringhash "$_.Name" "MD5"}