Ticker

6/recent/ticker-posts

Ad Code

Responsive Advertisement

Powershell : tester l’existence fichier

Lorsque vous effectuez une opération basée sur un fichier dans un script PowerShell, il est très courant de vérifier si le fichier existe ou non à l’emplacement spécifié.
Si le fichier n’existe pas, une exception peut être levée dans le script lors de l’accès au fichier, de la suppression du fichier, de la lecture du fichier ou de toute autre opération basée sur le fichier.

Dans ce tutoriel, je vais vous expliquer comment vérifier si un fichier existe en PowerShell en utilisant différentes méthodes Test-Path, Get-Item, Get-ChildItem ou avec la méthode [System.IO.File]::Exists().

Powershell : tester l'existence fichier

Comment tester l’existence fichier en Powershell avec Test-Path

Le premier moyen est le cmdlet Test-Path, spécialement conçu pour déterminer si un chemin ou un fichier existe. Lorsque vous utilisez cette cmdlet pour tester l’existence d’un fichier, le résultat est vrai ou faux.
Le résultat indique si le fichier existe ou non.

Test-Path -Path <chemin du fichier> -PathType Leaf

Par exemple pour tester l’existence du fichier C:\Users\mak\Desktop\Monfichier.txt

Test-Path -Path C:\Users\mak\Desktop\Monfichier.txt -PathType Leaf

Ici la commande retourne False car le fichier n’existe pas.

Comment tester l'existence fichier en Powershell avec Test-Path

On peut alors intégrer cette méthode dans un script PowerShell avec une condition if.
Cet exemple teste si le fichier existe, affiche un message lorsque c’est le cas et supprime à l’aide du cmdlet Remove-Item.
Sinon un message affiche que le fichier n’existe pas.

$FichierNom= "D:\docs\compatibilite.xlsx"
if (Test-Path $FichierNom) {
    Write-Host "Le fichier existe"
    #On peut alors supprimer le fichier
    Remove-Item $FichierNom
}
else
{
    Write-Host "Le fichier n'existe pas"
}

Comment tester l’existence fichier en Powershell avec Get-Item

Le cmdlet Get-Item est utilisée pour obtenir un élément à un emplacement spécifié.
Vous pouvez utiliser le caractère générique (*) pour obtenir tout le contenu de l’élément.
Nous allons voir comment utiliser le cmdlet Get-Item pour vérifier si un fichier existe ou non.

L’utilisation de cette commande est simple puisqu’il suffit de spécifier le chemin complet du fichier à l’aide du paramètre -Path.

Get-Item -Path C:\Users\Mak\Desktop\Monfichier.txt

On peut alors utiliser la commande pour tester si un fichier existe en l’intégrant dans une condition if comme ceci.
Dans ce script PowerShell, on créé une variable $FichierNom avec un chemin de fichier.
Ensuite on utilise la condition if pour tester si le fichier existe.
Enfin on effectue les actions, par exemple en affichant un message d’information.

$FichierNom = "D:\docs\compatibilite.xlsx"
if(Get-Item -Path $FichierNom-ErrorAction Ignore)
{
   
        Write-Host "Le fichier existe"
        #On peut alors supprimer le fichier
        Remove-Item $FichierNom
}
else
{
    Write-Host "Le fichier n'existe pas"
}

Comment tester l’existence fichier en Powershell avec Get-ChildItem

Le cmdlet PowerShell Get-ChildItem est utilisée pour obtenir des éléments ou des éléments enfants à partir d’un ou plusieurs emplacements spécifiés.
L’utilisation est exactement la même que précédemment pour vérifier si un fichier existe.

Vous pouvez spécifier un fichier à l’aide du paramètre -Path de Get-ChildItem.
Si le fichier n’existe pas, la commande renvoie une erreur :

Get-ChildItem : Impossible de trouver le chemin d'accès « C:\Users\Mak\Desktop\Monfichier.txt », car il n'existe pas.
Au caractère Ligne:1 : 1
Comment tester l'existence fichier en Powershell avec Get-ChildItem

Le script Powershell pour vérifier l’existence d’un fichier est alors le même qu’avec le cmdlet Get-Item.

$FichierNom = "D:\docs\compatibilite.xlsx"
if(Get-ChildItem -Path $FichierNom -ErrorAction Ignore)
{
    Write-Host "Le fichier existe"
    #On peut alors supprimer le fichier
    Remove-Item $FichierNom
}
else
{
    Write-Host "Le fichier n'existe pas"
}

Comment tester l’existence fichier en Powershell avec la méthode [System.IO.File]::Exists()

En utilisant la classe .Net System.IO.FIle et la méthode Exists(), nous pouvons vérifier si le fichier existe ou non avant d’effectuer toute opération.

Voyons comment utiliser la méthode [System.IO.File]::Exists() à l’aide d’un exemple.

Par exemple ci-dessous, ce script PowerShell teste l’existence du fichier spécificité dans la variable $FichierNom.
S’il existe, le fichier est supprimé, sinon il affiche un message indiquant que le fichier n’existe pas.

$FichierNom = "D:\docs\compatibilite.xlsx"
if([System.IO.File]::Exists($FichierNom))
{
    Write-Host "Le fichier existe"
    #On peut alors supprimer le fichier
    Remove-Item $FichierNom
}
else
{
    Write-Host "Le fichier n'existe pas"
}

L’article Powershell : tester l’existence fichier est apparu en premier sur malekal.com.

Enregistrer un commentaire

0 Commentaires