Crea un nuevo elemento.
- Sintaxis
- Descripción
- Ejemplos
- Ejemplo 1: Crear un archivo en el directorio actual
- Ejemplo 2: Crear un directorio
- Ejemplo 3: Crear un perfil
- Ejemplo 4: Crear un directorio en un directorio diferente
- Ejemplo 5: Crear múltiples archivos
- Ejemplo 6: Utilizar comodines para crear archivos en múltiples directorios
- Ejemplo 7: Crear un enlace simbólico a un archivo o carpeta
- Ejemplo 8: Utilice el parámetro -Force para intentar recrear carpetas
- Ejemplo 9: Usar el parámetro -Force para sobrescribir archivos existentes
- Parámetros
- Inputs
- Salidas
- Notas
Sintaxis
New-Item <String>
New-Item <String>] -Name <String>
Descripción
El cmdlet New-Item
crea un nuevo elemento y establece su valor. Los tipos de elementos que se pueden crear dependen de la ubicación del elemento. Por ejemplo, en el sistema de archivos, New-Item
crea archivos ycarpetas. En el registro, New-Item
crea claves y entradas del registro.
New-Item
también puede establecer el valor de los elementos que crea. Por ejemplo, cuando crea un archivo nuevo, New-Item
puede añadir contenido inicial al archivo.
Ejemplos
Ejemplo 1: Crear un archivo en el directorio actual
Este comando crea un archivo de texto que se llama «testfile1.txt» en el directorio actual. El punto (‘.’) en el valor del parámetro Path indica el directorio actual. El texto entrecomillado que sigue al parámetro Valor se añade al archivo como contenido.
New-Item -Path . -Name "testfile1.txt" -ItemType "file" -Value "This is a text string."
Ejemplo 2: Crear un directorio
Este comando crea un directorio llamado «Logfiles» en la unidad C:
. El parámetro ItemType especifica que el nuevo elemento es un directorio, no un archivo u otro objeto del sistema de archivos.
New-Item -Path "c:\" -Name "logfiles" -ItemType "directory"
Ejemplo 3: Crear un perfil
Este comando crea un perfil de PowerShell en la ruta que especifica la variable $profile
.
Puede utilizar perfiles para personalizar PowerShell. $profile
es una variable automática (incorporada) que almacena la ruta y el nombre del archivo del perfil «CurrentUser/CurrentHost». Por defecto, el perfil no existe, aunque PowerShell almacena una ruta y un nombre de archivo para él.
En este comando, la variable $profile
representa la ruta del archivo. El parámetro ItemType especifica que el comando crea un archivo. El parámetro Force le permite crear un archivo en la ruta del perfil, incluso cuando los directorios de la ruta no existen.
Después de crear un perfil, puede introducir alias, funciones y scripts en el perfil para personalizar su shell.
Para obtener más información, consulte about_Automatic_Variablesy about_Profiles.
New-Item -Path $profile -ItemType "file" -Force
Ejemplo 4: Crear un directorio en un directorio diferente
Este ejemplo crea un nuevo directorio Scripts en el directorio «C:\PS-Test».
El nombre del nuevo elemento del directorio, «Scripts», se incluye en el valor del parámetro Path,en lugar de especificarse en el valor de Name. Como indica la sintaxis, cualquiera de las dos formas de comando es válida.
New-Item -ItemType "directory" -Path "c:\ps-test\scripts"
Ejemplo 5: Crear múltiples archivos
Este ejemplo crea archivos en dos directorios diferentes. Debido a que Path toma múltiples cadenas, puede utilizarlo para crear múltiples elementos.
New-Item -ItemType "file" -Path "c:\ps-test\test.txt", "c:\ps-test\Logs\test.log"
Ejemplo 6: Utilizar comodines para crear archivos en múltiples directorios
El cmdlet New-Item
admite comodines en el parámetro Path. El siguiente comando crea un archivotemp.txt
en todos los directorios especificados por los comodines en el parámetro Path.
Get-ChildItem -Path C:\Temp\Directory: C:\TempMode LastWriteTime Length Name---- ------------- ------ ----d----- 5/15/2019 6:45 AM 1 Oned----- 5/15/2019 6:45 AM 1 Twod----- 5/15/2019 6:45 AM 1 ThreeNew-Item -Path * -Name temp.txt -ItemType File | Select-Object FullNameFullName--------C:\Temp\One\temp.txtC:\Temp\Three\temp.txtC:\Temp\Two\temp.txt
El cmdlet Get-ChildItem
muestra tres directorios bajo el directorio C:\Temp
. Utilizando comodinesel cmdlet New-Item
crea un archivo temp.txt
en todos los directorios bajo el directorio actual. El cmdlet New-Item
emite los elementos creados, que se canalizan a Select-Object
para verificar las rutas de los archivos recién creados.
Ejemplo 7: Crear un enlace simbólico a un archivo o carpeta
Este ejemplo crea un enlace simbólico al archivo Notice.txt en la carpeta actual.
$link = New-Item -ItemType SymbolicLink -Path .\link -Target .\Notice.txt$link | Select-Object LinkType, TargetLinkType Target-------- ------SymbolicLink {.\Notice.txt}
En este ejemplo, Target es un alias para el parámetro Value. El objetivo del enlace simbólico puede ser una ruta relativa. Antes de PowerShell v6.2, el objetivo debe ser una ruta completamente calificada.
A partir de PowerShell 7.1, ahora puede crear un SymbolicLink a una carpeta en Windows utilizando una ruta relativa.
Ejemplo 8: Utilice el parámetro -Force para intentar recrear carpetas
Este ejemplo crea una carpeta con un archivo dentro. Luego, intenta crear la misma carpeta usando-Force
. No sobrescribirá la carpeta, sino que simplemente devolverá el objeto carpeta existente con el archivo creado intacto.
PS> New-Item -Path .\TestFolder -ItemType DirectoryPS> New-Item -Path .\TestFolder\TestFile.txt -ItemType FilePS> New-Item -Path .\TestFolder -ItemType Directory -Force Directory: C:\Mode LastWriteTime Length Name---- ------------- ------ ----d----- 5/1/2020 8:03 AM TestFolderPS> Get-ChildItem .\TestFolder\ Directory: C:\TestFolderMode LastWriteTime Length Name---- ------------- ------ -----a---- 5/1/2020 8:03 AM 0 TestFile.txt
Ejemplo 9: Usar el parámetro -Force para sobrescribir archivos existentes
Este ejemplo crea un archivo con un valor y luego recrea el archivo usando -Force
. Esto sobrescribe el archivo existente y perderá su contenido como se puede ver por la propiedad de longitud
PS> New-Item ./TestFile.txt -ItemType File -Value 'This is just a test file' Directory: C:\Source\TestMode LastWriteTime Length Name---- ------------- ------ -----a---- 5/1/2020 8:32 AM 24 TestFile.txtNew-Item ./TestFile.txt -ItemType File -Force Directory: C:\Source\TestMode LastWriteTime Length Name---- ------------- ------ -----a---- 5/1/2020 8:32 AM 0 TestFile.txt
Nota
Cuando se utiliza New-Item
con el interruptor -Force
para crear claves de registro, el comando se comportará igual que cuando se sobrescribe un archivo. Si la clave del registro ya existe, la clave y todas las propiedades y valores se sobrescribirán con una clave del registro vacía.
Parámetros
Pide confirmación antes de ejecutar el cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Posición: | Nombrado |
Valor por defecto: | Falso |
Aceptar entrada de tuberías: | False |
Acepta caracteres comodín: | False |
Este parámetro no es compatible con ningún proveedor instalado con PowerShell. Para suplantar a otro usuario o elevar sus credenciales al ejecutar este cmdlet, utilice Invoke-Command
.
Tipo: | PSCredential |
Posición: | Nombre |
Valor predeterminado: | Usuario actual |
Acepta la entrada de la tubería: | Verdadero |
Acepta caracteres comodín: | Falso |
Forza a este cmdlet a crear un elemento que escribe sobre un elemento existente de sólo lectura. La implementación varía de un proveedor a otro. Incluso utilizando el parámetro Force, el cmdlet no puede anular las restricciones de seguridad.
Tipo: | SwitchParameter |
Posición: | Nombre |
Valor por defecto: | Ninguno |
Acepta la entrada de la tubería: | Falso |
Acepta caracteres comodín: | Falso |
Especifica el tipo especificado por el proveedor del nuevo elemento. Los valores disponibles de este parámetro dependen del proveedor actual que esté utilizando.
Si su ubicación está en una unidad FileSystem
, se permiten los siguientes valores:
- Archivo
- Directorio
- Enlace simbólico
- Junción
- Enlace duro
Nota
Crear un tipo SymbolicLink
en Windows requiere elevación como administrador. Sin embargo, Windows 10(build 14972 o más reciente) con el Modo Desarrollador habilitado ya no requiere elevación creando enlaces simbólicos.
En una unidad Certificate
, estos son los valores que puede especificar:
- Proveedor de Certificados
- Certificado
- Almacén
- Localización de Almacén
Para más información vea about_Providers.
Tipo: | Cadena |
Alias: | Tipo |
Posición: | Nombre |
Valor por defecto: | Ninguno |
Acepta entrada de canalización: | Verdadero |
Acepta caracteres comodín: | Falso |
Especifica el nombre del nuevo elemento. Puede especificar el nombre del nuevo elemento en el valor del parámetro Name oPath, y puede especificar la ruta del nuevo elemento en Name o Pathvalue. Los nombres de los elementos pasados mediante el parámetro Name se crean en relación con el valor del parámetroPath.
Tipo: | Cadena |
Posición: | Nombre |
Valor por defecto: | Ninguna |
Acepta la entrada de la tubería: | Verdadero |
Acepta caracteres comodín: | Falso |
Especifica la ruta de la ubicación del nuevo elemento. El valor predeterminado es la ubicación actual cuando se omitePath. Puede especificar el nombre del nuevo elemento en Name, o incluirlo enPath. Los nombres de los elementos pasados mediante el parámetro Name se crean en relación con el valor del parámetroPath.
Para este cmdlet, el parámetro Path funciona como el parámetro LiteralPath de otros cmdlets.Los caracteres comodín no se interpretan. Todos los caracteres se pasan al proveedor de la ubicación. Es posible que el proveedor no admita todos los caracteres. Por ejemplo, no se puede crear un nombre de archivo que contenga un carácterasterisco (*
).
Tipo: | Cadena |
Posición: | 0 |
Valor por defecto: | Lugar actual |
Acepta la entrada de la tubería: | Verdadero |
Acepta caracteres comodín: | Falso |
Especifica el valor del nuevo elemento. También puede canalizar un valor a New-Item
.
Tipo: | Objeto |
Alias: | Objetivo |
Posición: | Nombre |
Valor por defecto: | Ninguna |
Acepta entrada de tuberías: | Verdadero |
Acepta caracteres comodín: | Falso |
Muestra lo que ocurriría si el cmdlet se ejecuta.El cmdlet no se ejecuta.
Tipo: | SwitchParameter |
Aliases: | wi |
Posición: | Nombrado |
Valor por defecto: | Falso |
Aceptar entrada de tuberías: | False |
Acepta caracteres comodín: | False |
Inputs
Objeto
Puede canalizar un valor para el nuevo elemento a este cmdlet.
Salidas
Objeto
Este cmdlet devuelve el elemento que crea.
Notas
New-Item
está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para listar los proveedoresdisponibles en su sesión, escriba Get-PsProvider
. Para más información, consulte about_Providers.
- Borrar-elemento
- Copiar-elemento
- Obtener-elemento
- Invocar-elemento
- Mover-elemento
- Quitar-elemento
- Renombrar-elemento
- Configurar-elemento
- Sobre_Proveedores