【PowerShell】ネットワークドライブの割り当てをする

PowerShellで
 ・ネットワークドライブの割り当て
ができます!

ネットワークドライブの割り当て
ネットワークドライブの割り当て

コード

ここでは例として
 ・ネットワークパス上にあるサーバーのパス「\\SERVERHOST\Share」を
 ・Zドライブに割り当て
をします。
※ここではユーザー「user」を使用します。ユーザー「user」のパスワードは「password」とします。

# 割り当てる「ネットワークパス上にあるサーバーのパス」
$targetPath = "\\SERVERHOST\Share"
# ドライブ名
$driveName = "Z"
# ユーザー名
$userName = "user"
# パスワード
$password ="password"

# 認証情報のインスタンスを生成する
$securePass = ConvertTo-SecureString $password -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential $userName, $securePass

$ws = New-Object -ComObject Wscript.Shell

try
{
    # ネットワークドライブの割り当てを実行
    New-PSDrive -Persist -PSProvider FileSystem -Name $driveName -Root $targetPath -Credential $cred -ErrorAction Stop
    $ws.popup("割り当てました。")
}
catch
{
    $ws.popup("エラー : " + $PSItem)
}

割り当てる「ネットワークパス上にあるサーバーのパス」を指定します(2行目)。
ドライブ名を指定します(4行目)。

ユーザー名を指定します(6行目)。
パスワードを指定します(8行目)。

「認証情報のインスタンス」を生成します(11、12行目)。

「New-PSDrive」コマンドレットにより、ネットワークドライブの割り当てをします(19行目)。
※「Persist」を記載することで、割り当てを永続的にします。記載が無いと割り当てはプログラム実行中のみになります。
※「New-PSDrive」コマンドレットで例外が発生したら例外処理が実施されるようにするため、「-ErrorAction Stop」を記載します。

実行結果

ネットワークドライブの割り当てが出来ました。

実行結果①
実行結果①
実行結果②
実行結果②

参考①

ネットワークドライブの切断もできます。

詳細は以下の記事をご確認ください。

参考②

上記のコードで使用した以下の詳細は、公式サイトをご確認ください。

●「New-PSDrive」コマンドレット


●「ConvertTo-SecureString」コマンドレット


●「PSCredential 」クラス

タイトルとURLをコピーしました