Partager via


New-Item

Crée un élément.

Syntaxe

pathSet (Default) - All providers

New-Item
    [-Path] <string[]>
    [-ItemType <string>]
    [-Value <Object>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [<CommonParameters>]

nameSet - All providers

New-Item
    [[-Path] <string[]>]
    -Name <string>
    [-ItemType <string>]
    [-Value <Object>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [<CommonParameters>]

pathSet (Default) - WSMan provider

New-Item
    [-Path] <string[]>
    -ConnectionURI <uri>
    [-ItemType <string>]
    [-Value <Object>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [-OptionSet <hashtable>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <string>]
    [-SessionOption <SessionOption>]
    [-Port <int>]
    [<CommonParameters>]

nameSet - WSMan provider

New-Item
    [[-Path] <string[]>]
    -Name <string>
    [-ItemType <string>]
    [-Value <Object>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [-OptionSet <hashtable>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <string>]
    [-SessionOption <SessionOption>]
    [-ApplicationName <string>]
    [-Port <int>]
    [-UseSSL]
    [<CommonParameters>]

pathSet (Par défaut)

New-Item
    [-Path] <string[]>
    [-ItemType <string>]
    [-Value <Object>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [-Options <ScopedItemOptions>]
    [<CommonParameters>]

nameSet

New-Item
    [[-Path] <string[]>]
    -Name <string>
    [-ItemType <string>]
    [-Value <Object>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [-Options <ScopedItemOptions>]
    [<CommonParameters>]

Description

L’applet de commande New-Item crée un élément et définit sa valeur. Les types d’éléments qui peuvent être créés dépendent de l’emplacement de l’élément. Par exemple, dans le système de fichiers, New-Item crée des fichiers et des dossiers. Dans le Registre, New-Item crée des clés et des entrées de Registre.

New-Item pouvez également définir la valeur des éléments qu’il crée. Par exemple, lorsqu’il crée un fichier, New-Item pouvez ajouter du contenu initial au fichier.

Exemples

Exemple 1 : Créer un fichier dans le répertoire actif

Cette commande crée un fichier texte nommé «testfile1.txt» dans le répertoire actif. Le point ('.') dans la valeur du paramètre Path indique le répertoire actif. Le texte entre guillemets qui suit le paramètre Value est ajouté au fichier en tant que contenu.

New-Item -Path . -Name "testfile1.txt" -ItemType "File" -Value "This is a text string."

Exemple 2 : Créer un répertoire

Cette commande crée un répertoire nommé « Logfiles » dans le lecteur C:. Le paramètre ItemType spécifie que le nouvel élément est un répertoire, et non un fichier ou un autre objet de système de fichiers.

New-Item -Path "C:\" -Name "logfiles" -ItemType "Directory"

Exemple 3 : Créer un profil

Cette commande crée un profil PowerShell dans le chemin d’accès spécifié par la variable $PROFILE.

Vous pouvez utiliser des profils pour personnaliser PowerShell. $PROFILE est une variable automatique (intégrée) qui stocke le chemin d’accès et le nom de fichier du profil « CurrentUser/CurrentHost ». Par défaut, le profil n’existe pas, même si PowerShell stocke un chemin d’accès et un nom de fichier pour celui-ci.

Dans cette commande, la variable $PROFILE représente le chemin d’accès du fichier. paramètre ItemType spécifie que la commande crée un fichier. Le paramètre Forcer vous permet de créer un fichier dans le chemin du profil, même lorsque les répertoires du chemin d’accès n’existent pas.

Après avoir créé un profil, vous pouvez entrer des alias, des fonctions et des scripts dans le profil pour personnaliser votre interpréteur de commandes.

Pour plus d’informations, consultez about_Automatic_Variables et about_Profiles.

New-Item -Path $PROFILE -ItemType "File" -Force

Remarque

Lorsque vous créez un fichier à l’aide de cette méthode, le fichier résultant est encodé en UTF-8 sans marque d’ordre d’octet (BOM).

Exemple 4 : Créer un répertoire dans un autre répertoire

Cet exemple crée un répertoire Scripts dans le répertoire « C :\PS-Test ».

Le nom du nouvel élément de répertoire, « Scripts », est inclus dans la valeur de paramètre Path, au lieu d’être spécifié dans la valeur de Name. Comme indiqué par la syntaxe, l’un ou l’autre formulaire de commande est valide.

New-Item -ItemType "Directory" -Path "C:\ps-test\scripts"

Exemple 5 : Créer plusieurs fichiers

Cet exemple crée des fichiers dans deux répertoires différents. Étant donné que Path accepte plusieurs chaînes, vous pouvez l’utiliser pour créer plusieurs éléments.

New-Item -ItemType "File" -Path "C:\ps-test\test.txt", "C:\ps-test\Logs\test.log"

Exemple 6 : Utiliser des caractères génériques pour créer des fichiers dans plusieurs répertoires

L’applet de commande New-Item prend en charge les caractères génériques dans le paramètre Path. La commande suivante crée un fichier temp.txt dans tous les répertoires spécifiés par les caractères génériques dans le paramètre Path.

Get-ChildItem -Path C:\Temp\
    Directory:  C:\Temp

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d-----        5/15/2019   6:45 AM        1   One
d-----        5/15/2019   6:45 AM        1   Two
d-----        5/15/2019   6:45 AM        1   Three
New-Item -Path C:\Temp\* -Name temp.txt -ItemType File | Select-Object FullName
FullName
--------
C:\Temp\One\temp.txt
C:\Temp\Three\temp.txt
C:\Temp\Two\temp.txt

L’applet de commande Get-ChildItem affiche trois répertoires sous le répertoire C:\Temp. L’utilisation de caractères génériques de l’applet de commande New-Item crée un fichier temp.txt dans tous les répertoires sous le répertoire actif. L’applet de commande New-Item génère les éléments que vous avez créés, qui sont redirigés vers Select-Object pour vérifier les chemins des fichiers nouvellement créés.

Exemple 7 : Créer un lien symbolique vers un fichier ou un dossier

Cet exemple crée un lien symbolique vers le fichier Notice.txt dans le dossier actif.

$link = New-Item -ItemType SymbolicLink -Path .\link -Target .\Notice.txt
$link | Select-Object LinkType, Target
LinkType     Target
--------     ------
SymbolicLink {.\Notice.txt}

Dans cet exemple, cible est un alias pour le paramètre Value. La cible du lien symbolique doit être un chemin complet.

Exemple 8 : Utiliser le paramètre -Force pour tenter de recréer des dossiers

Cet exemple crée un dossier avec un fichier à l’intérieur. Ensuite, tente de créer le même dossier à l’aide de -Force. Il ne remplace pas le dossier, mais retourne simplement l’objet dossier existant avec le fichier créé intact.

PS> New-Item -Path .\TestFolder -ItemType Directory
PS> New-Item -Path .\TestFolder\TestFile.txt -ItemType File

PS> New-Item -Path .\TestFolder -ItemType Directory -Force

    Directory: C:\
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         5/1/2020   8:03 AM                TestFolder

PS> Get-ChildItem .\TestFolder\

    Directory: C:\TestFolder
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----         5/1/2020   8:03 AM              0 TestFile.txt

Exemple 9 : Utiliser le paramètre -Force pour remplacer les fichiers existants

Cet exemple crée un fichier avec une valeur, puis recrée le fichier à l’aide de -Force. Cela remplace le fichier existant, comme vous pouvez le voir par la propriété Length.

PS> New-Item ./TestFile.txt -ItemType File -Value 'This is just a test file'

    Directory: C:\Source\Test
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----         5/1/2020   8:32 AM             24 TestFile.txt

New-Item ./TestFile.txt -ItemType File -Force

    Directory: C:\Source\Test
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----         5/1/2020   8:32 AM              0 TestFile.txt

Remarque

Lorsque vous utilisez New-Item avec le commutateur -Force pour créer des clés de Registre, la commande se comporte de la même façon que lors de l’écriture d’un fichier. Si la clé de Registre existe déjà, la clé et toutes les propriétés et toutes les valeurs sont remplacées par une clé de Registre vide.

Paramètres

-ApplicationName

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur WSMan. Le fournisseur WSMan et ce paramètre n’est disponible que sur Windows.

Spécifie le nom de l’application dans la connexion. La valeur par défaut du paramètre ApplicationName est WSMAN.

Pour plus d’informations, consultez New-WSManInstance.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

nameSet
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Authentication

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur WSMan. Le fournisseur WSMan et ce paramètre n’est disponible que sur Windows.

Spécifie le mécanisme d’authentification à utiliser sur le serveur.

Pour plus d’informations, consultez New-WSManInstance.

Propriétés du paramètre

Type:AuthenticationMechanism
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-CertificateThumbprint

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur WSMan. Le fournisseur WSMan et ce paramètre n’est disponible que sur Windows.

Spécifie le certificat de clé publique numérique (X509) d’un compte d’utilisateur autorisé à effectuer cette action WSMan. Entrez l’empreinte numérique du certificat.

Pour plus d’informations, consultez New-WSManInstance.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False
Alias:cf

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ConnectionURI

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur WSMan. Le fournisseur WSMan et ce paramètre n’est disponible que sur Windows.

Spécifie le point de terminaison de connexion pour WSMan.

Pour plus d’informations, consultez New-WSManInstance.

Propriétés du paramètre

Type:Uri
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

pathSet
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Credential

Remarque

Ce paramètre n’est pas pris en charge par les fournisseurs installés avec PowerShell. Pour emprunter l’identité d’un autre utilisateur ou élever vos informations d’identification lors de l’exécution de cette applet de commande, utilisez Invoke-Command.

Propriétés du paramètre

Type:PSCredential
Valeur par défaut:Current user
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Force

Force cette applet de commande à créer un élément qui écrit sur un élément en lecture seule existant. L’implémentation varie du fournisseur au fournisseur. Même en utilisant le paramètre Force, le cmdlet ne peut pas remplacer les restrictions de sécurité.

Vous ne pouvez pas utiliser Force pour remplacer une jonction existante. Les tentatives de remplacement d’une jonction existante échouent avec une erreur « Impossible de supprimer car elle n’est pas vide ». Vous devez supprimer la jonction existante avant de en créer une nouvelle.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ItemType

Spécifie le type spécifié par le fournisseur du nouvel élément. Les valeurs disponibles de ce paramètre dépendent du fournisseur actuel que vous utilisez.

Si votre emplacement se trouve dans un lecteur FileSystem, les valeurs suivantes sont autorisées :

  • File
  • Directory
  • SymbolicLink
  • Junction
  • HardLink

Lorsque vous créez un fichier à l’aide de cette méthode, le fichier résultant est encodé en UTF-8 sans marque d’ordre d’octet (BOM).

Dans un lecteur Certificate, voici les valeurs que vous pouvez spécifier :

  • Certificate Provider
  • Certificate
  • Store
  • StoreLocation

Pour plus d’informations, consultez about_Providers.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:Catégorie

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Name

Spécifie le nom du nouvel élément. Vous pouvez spécifier le nom du nouvel élément dans l' Nom ou valeur du paramètre Path, et vous pouvez spécifier le chemin d’accès du nouvel élément dans Nom ou Valeur Path. Les noms d’éléments passés à l’aide du paramètre Name sont créés par rapport à la valeur du paramètre Path.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

nameSet
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Options

Il s’agit d’un paramètre dynamique rendu disponible par le fournisseur alias. Pour plus d’informations, consultez New-Alias .

Spécifie la valeur de la propriété Options d’un alias.

Les valeurs valides sont les suivantes :

  • None: l’alias n’a aucune contrainte (valeur par défaut)
  • ReadOnly: l’alias peut être supprimé, mais ne peut pas être modifié sans utiliser le paramètre Force
  • Constant: l’alias ne peut pas être supprimé ou modifié
  • Private: l’alias est disponible uniquement dans l’étendue actuelle
  • AllScope: l’alias est copié dans toutes les nouvelles étendues créées
  • Unspecified: l’option n’est pas spécifiée

Propriétés du paramètre

Type:ScopedItemOptions
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-OptionSet

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur WSMan. Le fournisseur WSMan et ce paramètre n’est disponible que sur Windows.

Transmet un ensemble de commutateurs à un service pour modifier ou affiner la nature de la requête.

Pour plus d’informations, consultez New-WSManInstance.

Propriétés du paramètre

Type:Hashtable
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:Système d'exploitation

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Path

Spécifie le chemin d’accès de l’emplacement du nouvel élément. La valeur par défaut est l’emplacement actuel lorsque chemin d’accès est omis. Vous pouvez spécifier le nom du nouvel élément dans Nom, ou l’inclure dans Chemin d’accès. Les noms d’éléments passés à l’aide du paramètre Name sont créés par rapport à la valeur du paramètre Path.

Pour cette applet de commande, le paramètre Path fonctionne comme le paramètre LiteralPath d’autres applets de commande. Les caractères génériques ne sont pas interprétés. Tous les caractères sont passés au fournisseur de l’emplacement. Le fournisseur peut ne pas prendre en charge tous les caractères. Par exemple, vous ne pouvez pas créer de nom de fichier qui contient un astérisque (*) caractère.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:Current location
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

pathSet
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False
nameSet
Position:0
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Port

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur WSMan. Le fournisseur WSMan et ce paramètre n’est disponible que sur Windows.

Spécifie le port à utiliser lorsque le client se connecte au service WinRM.

Pour plus d’informations, consultez New-WSManInstance.

Propriétés du paramètre

Type:Int32
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-SessionOption

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur WSMan. Le fournisseur WSMan et ce paramètre n’est disponible que sur Windows.

Définit un ensemble d’options étendues pour la session WS-Management.

Pour plus d’informations, consultez New-WSManInstance.

Propriétés du paramètre

Type:SessionOption
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:SO

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-UseSSL

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur WSMan. Le fournisseur WSMan et ce paramètre n’est disponible que sur Windows.

Spécifie que le protocole SSL (Secure Sockets Layer) doit être utilisé pour établir une connexion à l’ordinateur distant. Par défaut, SSL n’est pas utilisé.

Pour plus d’informations, consultez New-WSManInstance.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

nameSet
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-UseTransaction

Inclut la commande dans la transaction active. Ce paramètre est valide uniquement lorsqu’une transaction est en cours. Pour plus d’informations, consultez about_Transactions.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False
Alias:usetx

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Value

Spécifie la valeur du nouvel élément. Vous pouvez également diriger une valeur vers New-Item.

Propriétés du paramètre

Type:Object
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:Cible

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False
Alias:Wi

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

Object

Vous pouvez diriger une valeur pour le nouvel élément vers cette applet de commande.

Sorties

DictionaryEntry

L’applet de commande retourne un objet DictionaryEntry lors de la création d’une variable d’environnement.

DirectoryInfo

L’applet de commande retourne un objet DirectoryInfo lors de la création d’un répertoire dans le système de fichiers.

FileInfo

L’applet de commande retourne un objet FileInfo lors de la création d’un fichier dans le système de fichiers.

AliasInfo

L’applet de commande retourne un objet AliasInfo lors de la création d’un alias.

FunctionInfo

L’applet de commande retourne un objet FunctionInfo lors de la création d’une fonction.

PSVariable

L’applet de commande retourne un objet PSVariable lors de la création d’une variable.

Notes

Windows PowerShell inclut les alias suivants pour New-Item:

  • ni

New-Item est conçu pour fonctionner avec les données exposées par n’importe quel fournisseur. Pour répertorier les fournisseurs disponibles dans votre session, tapez Get-PSProvider. Pour plus d’informations, voir about_Providers.