Windowsの共有フォルダと言えばnet shareコマンドで確認していましたが、これだと複数段で表示されることの方が多くスクリプトへの加工が面倒でした。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
PS C:\> net share 共有名 リソース 注釈 ------------------------------------------------------------------------------- C$ C:\ Default share IPC$ Remote IPC 開発1課$ C:\共有フォルダ\東京本社\システム開発部\開発1課 東京本社 システム開発部 開発1... キャッシュは無効 ADMIN$ C:\Windows Remote Admin NETLOGON C:\Windows\SYSVOL\sysvol\example.jp\SCRIPTS Logon server share SYSVOL C:\Windows\SYSVOL\sysvol Logon server share コマンドは正常に終了しました。 |
これをPowershellのGet-SmbShareだと一行に表示されて便利です。
1 2 3 4 5 6 7 8 9 10 |
PS C:\> get-SmbShare Name ScopeName Path Description ---- --------- ---- ----------- ADMIN$ * C:\Windows Remote Admin C$ * C:\ Default share IPC$ * Remote IPC NETLOGON * C:\Windows\SYSVOL\sysvol\example.jp\SCRIPTS Logon server share SYSVOL * C:\Windows\SYSVOL\sysvol Logon server share 開発1課$ * C:\共有フォルダ\東京本社\システム開発部\開発1課 東京本社 システム開発部 開発1課 テストテストテストテストテストテスト |
CSVファイルに出力する場合はExport-csvを使います。
1 2 3 4 5 6 7 8 9 10 |
PS C:\> get-SmbShare | select name,path | export-csv -Encoding default -path share.csv PS C:\> type .\share.csv #TYPE Selected.Microsoft.Management.Infrastructure.CimInstance "name","path" "ADMIN$","C:\Windows" "C$","C:\" "IPC$","" "NETLOGON","C:\Windows\SYSVOL\sysvol\example.jp\SCRIPTS" "SYSVOL","C:\Windows\SYSVOL\sysvol" "開発1課$","C:\共有フォルダ\東京本社\システム開発部\開発1課" |
-Encoding defaultを付加しないと文字コードがASCIIになって文字化けします。
1 2 3 4 5 6 7 8 9 10 |
PS C:\> get-SmbShare | select name,path | export-csv share.csv PS C:\> type .\share.csv #TYPE Selected.Microsoft.Management.Infrastructure.CimInstance "name","path" "ADMIN$","C:\Windows" "C$","C:\" "IPC$","" "NETLOGON","C:\Windows\SYSVOL\sysvol\example.jp\SCRIPTS" "SYSVOL","C:\Windows\SYSVOL\sysvol" "??1?$","C:\??????\????\???????\??1?" |