2010年2月26日金曜日

Windows のタスクスケジューラで認証の必要なネットワークドライブを扱う

今日は Windows の話題ですよ。
同僚がバッチ処理でネットワークドライブが使いたいとか言い出して、昔そんなことしたなあと記憶を呼び覚ましました。 net コマンドを使いますよ。

下記がサンプルコマンドです。
net use Z: \\192.168.1.1\共有 pass /USER:username
Z:
dir > "C:\test\dir.txt"
C:
net use Z: /delete /y
1行目:net use コマンドで \\192.168.1.1\共有 を、ユーザ名 username 、パスワード pass で Z ドライブに割り当てます。
2行目:Z ドライブに移動します。
3行目:Z ドライブのディレクトリ一覧を C:\test の dir.txt と言う名のファイルに書き出します。
4行目:Z ドライブを切断します。 /y オプションをつけることで強制的に切断されます。

肝心なのは、1行目と4行目ですね。
1行目でドライブを割り当てて、処理を行い、4行目でドライブを切断です。
3行目で C ドライブにパスを移動していますが、この行が無いと Z ドライブにアクセスしたままなので、ドライブ切断時に /y オプションが無いと、切断して良いか警告が表示され処理が止まってしまいます。
ネットワークドライブから移動してしまうか、切断時に /y オプションを付けるかしましょう。サンプルでは両方しています。用心深いでしょ。

素敵なネットワークドライブライフをお送りください。ではでは……

0 件のコメント :

コメントを投稿