Auteur de questions
fichier present ou non

Question
-
bonjour,
je souhaite tester si un fichier est present ou pas.
je me sers de test-path mais je ne veux pas indiquer le chemin.
$chemin =Get-Location #$fichier = $chemin + "\toto" <#if ((Test-Path $fichier) -eq $true ) {Write-Host "Present"} else{Write-Host "Absent"}#>
mais ca ne fonctionne pas.
erreur c est sur de ma part.comment concaténer le chemin et le fichier
merci
- Modifié olivier Rb lundi 20 avril 2020 15:35
Toutes les réponses
-
-
bonjour Olivier Rb
tu t'es bien compliqué la vie.
$chemin =Get-Location
$fichier = "$chemin\toto"
# ou encore $fichier = Join-Path -Path $chemin -ChildPath "toto"
Pourquoi ?
$chemin.gettype()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True False PathInfo System.Object$fichier.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String System.Object$Chemin n'est pas une chaine ... mais si on passe la variable entre double quotes cela en devient une. :-)
La seconde solution utilise la cmdlet Join-Path dont la syntaxe parle d'elle même. J'avoue que je ne l'utilise guère, contrairement à sa petite soeur Split-Path.
cordialementOlivier
-