Powershell 'Move-Item' ne fait pas de répertoire s'il n'existe pas
J'ai un script Powershell qui fait beaucoup de choses, et l'un d'entre eux est le déplacement des fichiers:
$from = $path + '\' + $_.substring(8)
$to = $quarantaine + '\' + $_.substring(8)
Move-Item $from $to
Mais il arrive que la structure de répertoire n'est pas déjà présent dans la $to
chemin. Donc je voudrais Powershell pour créer avec ce commando. J'ai essayé Move-Item -Force $from $to
, mais cela n'a pas aider.
Que puis-je faire pour vous assurer que Powershell crée les répertoires voulus pour obtenir des choses de travail?
J'espère que je me suis bien fait comprendre, si non, veuillez demander!
Voir cette question: stackoverflow.com/questions/2695504/...
C'est ce que j'ai déjà essayé, avec pas de chance. Comme mentionné dans ma question
Pourrait en faire une copie et de suppression.
C'est ce que j'ai déjà essayé, avec pas de chance. Comme mentionné dans ma question
Pourrait en faire une copie et de suppression.
OriginalL'auteur Michiel | 2012-12-17
Vous devez vous connecter pour publier un commentaire.
Vous pouvez créer vous-même:
-PathType Container
n'est pas un paramètre pourNew-Item
. Supprimer ce et il fonctionne comme prévu.OriginalL'auteur Shay Levy
Vous pouvez utiliser le système.io.répertoire .NET de la classe pour vérifier le répertoire de destination et créer si elle n'existe pas.
Voici un exemple d'utilisation de variables:-
Test-Path
/New-Item
?Au moment de l'écriture, j'étais de nouveau à powershell, d'ignorer et de la réponse que j'ai donné était de savoir comment je le faire à l'époque - c'était il y a 4 ans. Ces jours-ci, je voudrais, en effet, utiliser le test-path/nouvelle-élément.
c'est en fait quelque chose que je trouve assez sympa sur powershell - si vous venez dans le avec un .NET fond, beaucoup de ce que vous êtes utilisé pour est portable et réutilisable en powershell avec la facilité. Et si il n'y a pas une applet de commande qui fait ce que vous avez besoin, mais il y a un .NET de classe qui fait, le problème est résolu!
Parfait, merci. Je me demandais juste si il y avait quelque chose que je ne savais pas. J'aime la manière dont vous pouvez toujours vous rabattre sur le plein .NET comme nécessaire ou même écrire votre propre.
OriginalL'auteur Graham Gold