Question [Fonction]Simple Net-Use en Powershell

Plus d'informations
il y a 16 ans 6 mois #5248 par Alan Pinard
Bonjour à tous,

Voici une fonction qui imite simplement la commande net-use pour la création de map réseau.

[code:1]
Function VA-NetUse{

PARAM(
[String]$Map,
[String]$Server,
[String]$Share,
[String]$Action
)

BEGIN{

If($Action -eq $Null) {Write-Host \"Veillez inscrire une action [Create | Delete]. Ex: VA-NetUse -Action Create -Map z -Server ServerName -Share Share1\";Break}
Else {$Action.ToUpper() | Out-Null}
$Map = $Map + \":\"
$MapTest = Get-WmiObject CIM_LogicalDisk
$MapTest | ForEach {
If(($_.DeviceId -eq $Map) -eq $True){$MapExist = $True} Else {$MapExist = $False}
}

}

PROCESS{

$MapShare = New-Object -Com WScript.Network

Switch ($Action){
\"DELETE\" {
$Share = \"\"
$Server = \"\"
If($Map -eq \"\"«»){Write-Host \"Veillez entrer la lettre du mapping a supprimé. Ex: VA-NetUse -Map z -Action Delete\";$Result = \"Error\";Break}
If ($MapExist -eq $False){Write-Host \"Impossible de supprimer le mapping car il est inexistant.\";$Result = \"Error\";Break}
If($Share -ne \"\"«»){Write-Host \"L'option -Share ne peut pas être utiliser avec cette action!\";$Result = \"Error\";Break}
If($Server -ne \"\"«»){Write-Host \"L'option -Server ne peut pas être utiliser avec cette action!\";$Result = \"Error\";Break}
$MapShare.RemoveNetworkDrive($Map,\"True\"«»)
$Result = \"Success\"
}
\"CREATE\" {
If($Map -eq $Null){Write-Host \"Veillez entrer une lettre valide pour le mapping. Ex: VA-NetUse -Map z -Share \\Srv\Share\";$Result = \"Error\";Break}
If ($MapExist -eq $True){Write-Host \"Lettre déjà utiliser. Veiller utiliser un autre lettre.\";$Result = \"Error\";Break}
If($Share -eq $Null){Write-Host \"Veillez inscrire un partage valide. Ex: VA-NetUse -Map z -Server ServerName -Share Share1\";$Result = \"Error\";Break}
If($Server -eq $Null){Write-Host \"Veillez inscrire une adresse de serveur. Ex: VA-NetUse -Map z -Server ServerName -Share Share1\";$Result = \"Error\";Break}
$MapShare.MapNetworkDrive($Map,\"\\\" + $Server + \"\\" + $Share)
$Result = \"Success\"
}
}

}

END{
#Return $Result
}

}
#Va-NetUse -Action \"Create\" -Map \"w\" -Server \"server1.domain.com\" -Share \"Share\"
#Va-NetUse -Action \"Delete\" -Map \"w\"
[/code:1]

La pièce jointe VA_NetUse.ps1 est absente ou indisponible



Alan Pinard
Version A<br><br>Message édité par: Versiona, à: 3/09/09 00:38

Alan Pinard
Version A
Pièces jointes :

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.050 secondes
Propulsé par Kunena