Você pode fazer algo parecido com o abaixo para verificar se o diretório atual em que seu script está sendo executado contém $ var_InterventionManuelle.
If(Test-Path -Path $var_InterventionManuelle)
{
While((Get-Item -path ".\").FullName.Contains($var_InterventionManuelle)) { cd .. }
Remove-Item -Recurse -Force $var_InterventionManuelle
}
Um exemplo seria o diretório atual como "C: \ Temp \ Scripts \ Blah", e $ var_InterventionManuelle="C: \ Temp", então o diretório atual contém $ var_InterventionManuelle e ele retornará para C: \.
Obviamente, se a variável $ var_InterventionManuelle contiver a raiz da unidade (por exemplo, "C: \") e o diretório atual em que o script está executando estiver na unidade C: \, o loop while nunca será concluído. Se você souber que a variável $ var_InterventionManuelle NUNCA conterá a raiz da unidade, tudo bem, caso contrário, você precisará atender a esse comportamento fazendo algo assim:
if($var_InterventionManuelle.Split("\")[1].Length -eq 0)
{
Write-Output "I'm trying to delete the root drive, abort, abort"
exit
}
O script acima verifica se existe alguma coisa após a primeira barra no caminho. Por exemplo, "C: \" será dividido em "C:" e "" para que o segundo item da matriz tenha um comprimento de 0. Onde "C: \ Temp \ Blah" será dividido em "C:", "Temp "e" Blah ". Neste caso, o segundo item na matriz ("Temp") terá um comprimento de 4, que não é 0 ...