トップ回答者
特定の文字または数字を抜き取る

質問
-
お世話になります。
Get-Smbopenfileにてでたoutputをテキストに出してその中からClientComputerNameのIPアドレスのみを摘出していのですが。
Get-Smbopenfile |Where-Object {$_.ClientUserName -Like "Hoge"} > C:\Temp\connecteduser.txt
テキストの中はこのようになります。
FileId SessionId Path ShareRelativePath ClientComputerName ClientUserName
------ --------- ---- ----------------- ------------------ --------------
674041430953 670014898193 D:\HomeShare\Hoge 10.1.2.3 Domain\hoge最終的にはそのIPを摘出してnetstat -a 10.1.2.3 コマンドにつなげてNetNiosNameを出したいのですがいい方法があるでしょうか?
よろしくお願いします。
回答
-
・ファイルに書き出すのと、netstatを実行するのは別のタイミングでしょうか。同時で良いのなら、次のような記述が可能です。
Get-Smbopenfile | ? (略) | tee "test.txt" | %{netstat -a $_.ClientComputerName}
・リダイレクトでそのまま出力しなければいけませんか。出力形式にこだわらないのであれば、Export-Csvでcsvファイルとして出力し、そのcsvファイルをImport-Csvでオブジェクトとして再構築できます。
Get-Smbopenfile | ? (略) | Export-Csv "test.csv"
Import-Csv "test.csv" | %{netstat -a $_.ClientComputerName}
- 回答の候補に設定 kenjinoteMVP 2016年3月22日 22:38
- 回答としてマーク 牟田口大介Moderator 2016年3月23日 7:30
すべての返信
-
・ファイルに書き出すのと、netstatを実行するのは別のタイミングでしょうか。同時で良いのなら、次のような記述が可能です。
Get-Smbopenfile | ? (略) | tee "test.txt" | %{netstat -a $_.ClientComputerName}
・リダイレクトでそのまま出力しなければいけませんか。出力形式にこだわらないのであれば、Export-Csvでcsvファイルとして出力し、そのcsvファイルをImport-Csvでオブジェクトとして再構築できます。
Get-Smbopenfile | ? (略) | Export-Csv "test.csv"
Import-Csv "test.csv" | %{netstat -a $_.ClientComputerName}
- 回答の候補に設定 kenjinoteMVP 2016年3月22日 22:38
- 回答としてマーク 牟田口大介Moderator 2016年3月23日 7:30