Hors-Dossier: pourquoi devrais-je combiner -Ajouter et -NoClobber? N'est-ce pas -Ajouter assez?
Je ne vois pas la différence entre
... | Out-File -Append
et
... | Out-File -Append -NoClobber
À la fois d'ajouter des informations dans le fichier, à la fois de ne pas écraser le contenu, à la fois de créer le fichier s'il n'existe pas. Et pourtant, tous les exemples sur internet, utiliser la combinaison de -Append
et -NoClobber
.
Suis-je raté quelque chose?
- NoClobber les moyens de ne pas écraser le fichier.
- Mais le fait de
append
, non? - Nope, voir ci-dessous.
- Mais ma question est: pourquoi utiliser
-Append -NoCLobber
? Pourquoi ne pas simplement-Append
? NoClobber ne Va pas remplacer le contenu) d'un fichier existant. Par défaut, si un fichier existe dans le chemin d'accès spécifié, Le fichier remplace le Fichier sans avertissement. Si le les deux Append et NoClobber sont utilisés, la sortie est ajoutée au fichier existant. Même l'aide ne fait pas de sens pour moi. Pourquoi aurais-je besoin pour utiliser la concaténation et NoClobber? - Ajout- de par sa conception - ne pas écraser le fichier, non? - Vous n'avez pas. Voir "jon Z"'s réponse ci-dessous.
NoClobber
est utilisé pour s'assurer que vous n'enregistrez la sortie si aucun nom de fichier existe déjà. Si l'un existe, il échoue.Append
ajoute à la fin d'un fichier(ou crée un, si le fichier n'existe pas). Vous ne "jamais" de les utiliser ensemble. Ils sont pour 2 scénarios différents
Vous devez vous connecter pour publier un commentaire.
-NoClobber
va définir le FileMode (comment le système d'exploitation devrait ouvrir un fichier) pour CreateNew (= si le fichier existe déjà, une IOException exception est levée), sauf-Append
a été spécifié dans lequel cas, il fixe le FileMode à Ajouter (= ouvre le fichier, s'il existe, et cherche à la fin du fichier, ou crée un nouveau fichier).Donc, à toutes fins pratiques,
-Append -NoClobber
=-Append
-Append
sans-NoClobber
.Veuillez en lire plus sur Microsoft Doc