Qu'est-ce que l'utilisation d'-recurse dans powershell?

0

La question

Désolé c'est probablement une question stupide: quelle est la différence entre

Remove-Item -recurse -Force -Verbose et Remove-Item -Force -Verbose

il semble que si nous utilisons -recurse pour un dossier et sous-dossiers powershell supprimer les fichier un par un à l'intérieur du dossier. et si on enlève le -recurse powershell il suffit de supprimer le dossier principal sans contrôle de l'intérieur du dossier. techniquement n'est pas de script sera exécuté plus rapidement sans -recurse?

powershell
2021-11-24 05:32:51
1

La meilleure réponse

3

lorsque vous utilisez Remove-Item sur un dir arbre qui contient les fichiers ... et ne PAS l'utiliser -Recurse, vous obtiendrez la norme de confirmation. donc, en utilisant ce paramètre permet de courir sans délai à partir de la "voulez-vous vraiment faire cela?" invite de commandes.

c'est une des raisons pour lesquelles certaines personnes préfèrent tuyau de la sortie de Get-ChildItem -Recurse pour Remove-Item.

2021-11-24 22:34:17

Pourriez-vous élaborer sur les avantages possibles de l'utilisation de Get-ChildItem | Remove-Item plus Remove-Item -Recurse?
zett42

Voici un lien vers un scripteur article d'environ douze ans, illustrant l'utilisation de Get-childItem -recurse en conjonction avec Remove-Item. devblogs.microsoft.com/scripting/...
Walter Mitty

Get-ChildItem | Remove-Item en soi n'est pas nécessairement de l'aide, si vous ne l'utilisez pas -Recurse: Si Get-ChildItemla production est / inclut un non vide répertoire, vous obtenez l'invite de confirmation de trop. Si l'intention est de supprimer les fichiers uniquement, Get-ChildItem -File | Remove-Item ne l'aide, cependant, dans les cas où Remove-Item * ou Remove-Item *.foo pourrait involontairement match répertoires trop (Remove-Item a pas de -File (ou -Directory) commutateur, qui est sans doute une lacune). /cc @zett42
mklement0

@mklement0 - bon point ... j'ai fait que un peu plus clair en ajoutant -Recurse à l' G-CI appel.
Lee_Dailey

@zett42 - le but de la tuyauterie G-CI pour R-I c'est que [lorsque vous incluez -Recurse sur le G-CI appel] vous êtes explicitement traiter avec les éléments. c'est un peu plus à la représentation directe de la façon dont certains d'entre nous pensent à propos de l'opération. que le concept de "code" match up fait pour faciliter le codage et le débogage plus facile et plus facile d'entretien.
Lee_Dailey

L'ajout d' -Recurse pour Get-ChildItem n'aide pas, cependant, parce que sans -File il peut encore éventuellement inclure des répertoires non vides, qui - sans -Recurse appliquée à Remove-Item - déclenche une nouvelle fois l'invite de confirmation.
mklement0

@mklement0 - ah! je n'ai jamais couru dans cette situation. merci pour l'info! [sourire]
Lee_Dailey

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................