Question Lancer un executable avec des paramètres

Plus d'informations
il y a 10 ans 5 mois #20825 par bruno
Bonjour à tous,

De temps à autre, j'ai besoin d'utiliser ou d'exploiter des scripts que des gens ont développés.

J'ai trouvé un script pour un environnement Citrix, mais celui-ci ne fonctionne pas. J'ai essayé certaines choses que j'ai pu trouvées sur Internet, mais je n'y arrive pas.

Ce qui bloque:

[code:1]
$FilePath = “c:\scripts\output.txt”
udadmin.exe -list -f \"XDT_ENT_UD\" | Select-String \"XDT_ENT_UD 2016.0310\" | out-file $FilePath
[/code:1]

Le script est dans le path de l'exe, mais il semble utiliser le path par défaut de Windows.

J'ai essayé ça:
[code:1]
$FilePath = \"c:\tools\output.txt\"
$PathScript = Get-ScriptDirectory \"\\"

#Write-Output $PathScript
function Get-ScriptDirectory
{
Split-Path $script:MyInvocation.MyCommand.Path
}
Set-Location $PathScript
[/code:1]

Ce qui semble fonctionner mais après mon problème est sur les paramètres qui sont mal passés à l'exe. J'ai essayé en fonction des erreurs rencontrées de tripler les quotes, de passer des variables, etc.

Si quelqu'un pouvait me guider sur ce point, ce serait sympathique.

Je vous mets le script dans sa totalité:

[code:1]
# Script Name: UdadminReset.ps1
# Description: Script to release Citrix licenses
# support.citrix.com/proddocs/topic/licens...s-user-device-r.html
#
# Notes:
# 1. This script is scheduled to run thru Windows Task Scheduler
# 2. C:\Program Files (x86)\Citrix\Licensing\LS has been included in the “Path” system variable so udadmin.exe can be called without full path
#=================================================================================================================

#get used licenses
$FilePath = “c:\scripts\output.txt”
udadmin.exe -list -f “XDT_PLT_UD” | Select-String “XDT_PLT_UD 2016.0310” | out-file $FilePath

#remove excess and get license to delete
$Licenses = (Select-String -Pattern “XDT” -Path $FilePath ) | ForEach {$_.line -replace ” XDT_PLT_UD 2016.0310 “,”” }
#$Licenses = (Get-Content $FilePath ) | Select-String -Pattern “XDT” | ForEach {$_.line -replace ” XDT_PLT_UD 2016.0310 “,”” }

#Use udadmin to release licenses
ForEach ($Lic in $Licenses) {
#Write-Host Reset the following user: $Lic
udadmin.exe -f XDT_PLT_UD -user $Lic -delete
}

# restart Licensing service
$svc = (Get-Service -DisplayName “Citrix Licensing”)
Restart-Service -InputObject $svc -verbose

#*********************************************************************
#End Of Script
#*********************************************************************
Exit
[/code:1]<br><br>Message édité par: netgus, à: 6/10/15 15:16

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

Plus d'informations
il y a 10 ans 5 mois #20826 par Laurent Dardenne
Salut,
peux-tu utiliser la balise code stp ?

Tutoriels PowerShell

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

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