質問: コマンドプロンプト(batファイル)を使用して特定のネットワークドライブがエクスプローラーに割り当てられているのかチェックしたい \\aaa.bbb.ccc\dddというパスのファイルサーバーをエクスプローラーに割り当てるためのbatファイルを作成したいと思います。 net useを使用すればそれは実現できるということはわかっているのですが、 人によっては既に意図しないドライブレターに割り当てられていることもあるので、そこをチェックしてもし割り当てられていなかったら実行という処理をしたいと思います。 このような処理は行えるのでしょうか? 一度net useを使ってしまうとドライブレターが割り当てたパスを全て代替しているように思えるので、そのドライブレターが使用されているか確認するくらいしかできないのかと思いました。 もし可能であればやりかたも教えてください。
回答: Z ドライブに割り当てる場合、こんな感じかと。 ``` @echo off net use | %windir%\system32\find.exe "Z: " >NUL if errorlevel 1 net use Z: \\aaa.bbb.ccc\ddd ``` net use コマンドでネットワークドライブの一覧を表示して、find コマンドで Z ドライブを探してなかったら、net use コマンドで割り当てる、というような。 ``` if not exist z:\ net use ... ``` だと、割り当てられているけれど切断されている場合に、net use コマンドが実行されてしまいます。