零細システムエンジニアの備忘録

RPA、サーバ、ネットワークに関する設定メモ、導入相談もコメント欄やメールに頂ければお答えしますのでお気軽にご相談下さい(^^)

【バッチスクリプト】ログイン時に共有フォルダにログインユーザ名のフォルダを作成しネットワークドライブに割り当てる

ファイルサーバ上に各ユーザのファイルを共有するときに、各個人のファイルについては任意のフォルダを作成して、ネットワークドライブに割り当てるためのログインスクリプトになります。

基本的にActiveDirectoryサーバがあれば一発ですが、導入していなくて、BuffaloなどのNASサーバを利用している場合で利用できるかなと思います。

 

①バッチファイル作成

仕様:任意のユーザでログインした時(例では【kato】)共有サーバに【kato】というフォルダ名が作成されていなければ作成し、それをネットワークドライブのTドライブ割り当てる。

 

テキストファイルに下記を貼り付け、任意のファイル名で保存

文字コードANSIとする。

 @echo off@echo off
REM ファイルサーバの共有直下をTドライブにマウント

net use T: \\【サーバ名】\【共有フォルダ名】 /PERSISTENT:NO


REM ユーザ名のフォルダが存在しているか。無ければユーザ名のフォルダを作成

if exist T:\%username% (

echo "フォルダがあります。"

) else (

echo "フォルダがありません。"

md T:\%username%

)


REM Tドライブを切断

net use T: /delete


REM Sドライブをマウント

net use S: \\【サーバ名】\【共有フォルダ名】\%username% /PERSISTENT:NO

 

②ログイン時にバッチスクリプトを実行させるために下記ディレクトリに作成したバッチファイルを配置する必要があります。

 

あまり利用するケースは少ないかもしれませんが、構築案件でどうしてもこういったことをやらざるえない時があります(笑)