Anda dapat menggunakan exist
perintah untuk memeriksa apakah jalur itu valid:
if exist \\192.168.1.1\drive1 net use s: \\192.168.1.1\drive1
Jika Anda perlu memberikan kredensial (yaitu pengguna Windows Anda saat ini tidak memiliki akses ke share itu), tambahkan /user
:
if exist \\192.168.1.1\drive1 net use s: \\192.168.1.1\drive1 /user:myDomain\myUser myPassword
Jika ada kemungkinan bagian itu sudah ada, dan Anda ingin menghapusnya jika itu tidak lagi tersedia, tambahkan sebuah else
klausa:
if exist \\192.168.1.1\drive1 (net use s: \\192.168.1.1\drive1) else (net use /delete s:)
Dan sekali lagi, tambahkan /user
jika Anda membutuhkannya.
Anda dapat mengikat ini bersama-sama dalam file batch yang mirip dengan yang berikut ini:
@echo off
if exist \\192.168.1.1\drive1 (set shareExists=1) else (set shareExists=0)
if exist y:\ (set driveExists=1) else (set driveExists=0)
if %shareExists%==1 if not %driveExists%==1 (net use y: \\192.168.1.1\drive1)
if %shareExists%==0 if %driveExists%==1 (net use /delete y:)
set driveExists=
set shareExists=
Powershell akan mempermudah ini:
sumber
Itu hanya lebih sederhana untuk hanya mencoba memetakannya menggunakan Windows File explorer atau menggunakan perintah net use. Entah itu berhasil atau tidak.
sumber
Ini adalah kode terakhir:
Saya menggunakan
Test-Path \\192.168.1.1\volume1
seperti yang disarankan untuk memeriksa apakah jalur jaringan tersedia dan((New-Object System.IO.DriveInfo("Y:")).DriveType -ne "NoRootDirectory")
untuk memeriksa apakah huruf drive ada.sumber