Move-Item
Mueve un elemento de una ubicación a otra.
Sintaxis
Path (Es el valor predeterminado).
Move-Item
[-Path] <String[]>
[[-Destination] <String>]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
LiteralPath
Move-Item
[[-Destination] <String>]
-LiteralPath <String[]>
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
El cmdlet Move-Item mueve un elemento, incluidas sus propiedades, contenido y elementos secundarios, de una ubicación a otra. El mismo proveedor debe admitir las ubicaciones.
Por ejemplo, puede mover un archivo o subdirectorio de un directorio a otro o mover una subclave del Registro de una clave a otra. Al mover un elemento, se agrega a la nueva ubicación y se elimina de su ubicación original.
Ejemplos
Ejemplo 1: Mover un archivo a otro directorio y cambiar su nombre
Este comando mueve el archivo Test.txt de la unidad de C: al directorio E:\Temp y lo cambia de test.txt a tst.txt.
Move-Item -Path C:\test.txt -Destination E:\Temp\tst.txt
Ejemplo 2: Mover un directorio y su contenido a otro directorio
Este comando mueve el directorio C:\Temp y su contenido al directorio C:\Logs.
El directorio Temp y todos sus subdirectorios y archivos, a continuación, aparecen en el directorio Logs.
Move-Item -Path C:\Temp -Destination C:\Logs
Ejemplo 3: Mover todos los archivos de una extensión especificada del directorio actual a otro directorio
Este comando mueve todos los archivos de texto (*.txt) en el directorio actual (representado por un punto (.)) al directorio C:\Logs.
Move-Item -Path .\*.txt -Destination C:\Logs
Ejemplo 4: Mover recursivamente todos los archivos de una extensión especificada desde el directorio actual a otro directorio
Este comando mueve todos los archivos de texto desde el directorio actual y todos los subdirectorios, recursivamente, al directorio C:\TextFiles.
Get-ChildItem -Path ".\*.txt" -Recurse | Move-Item -Destination "C:\TextFiles"
El comando usa el cmdlet Get-ChildItem para obtener todos los elementos secundarios del directorio actual (representados por el punto (.)) y sus subdirectorios que tienen una extensión de nombre de archivo *.txt. Usa el parámetro Recurse para que la recuperación sea recursiva y el parámetro include para limitar la recuperación a los archivos *.txt.
El operador de canalización (|) envía los resultados de este comando a Move-Item, que mueve los archivos de texto al directorio TextFiles.
Si los archivos que se van a mover a C:\Textfiles tienen el mismo nombre, Move-Item muestra un error y continúa, pero solo mueve un archivo con cada nombre a C:\Textfiles. Los demás archivos permanecen en sus directorios originales.
Si no existe el directorio Textfiles (o cualquier otro elemento de la ruta de acceso de destino), se produce un error en el comando. El directorio que falta no se crea automáticamente, incluso si usa el parámetro Force.
Move-Item mueve el primer elemento a un archivo denominado Textfiles y, a continuación, muestra un error que explica que el archivo ya existe.
Además, de forma predeterminada, Get-ChildItem no mueve archivos ocultos. Para mover archivos ocultos, use el parámetro Force con Get-ChildItem.
Nota:
En Windows PowerShell 2.0, cuando se usa el parámetro Recurse del cmdlet Get-ChildItem, el valor del parámetro Path debe ser un contenedor. Use el parámetro include para especificar el filtro de extensión de nombre de archivo *.txt (Get-ChildItem -Path .\* -Include *.txt -Recurse | Move-Item -Destination C:\TextFiles).
Ejemplo 5: Traslado de claves y valores del Registro a otra clave
Este comando mueve las claves y los valores del Registro dentro de la clave del Registro MyCompany en HKLM\Software a la clave de MyNewCompany. El carácter comodín (*) indica que se debe mover el contenido de la clave MyCompany, no la propia clave. En este comando, se omiten los nombres de parámetro opcionales Path y Destination.
Move-Item "HKLM:\software\mycompany\*" "HKLM:\software\mynewcompany"
Ejemplo 6: Mover un directorio y su contenido a un subdirectorio del directorio especificado
Este comando mueve el directorio Logs[Sept`06] (y su contenido) al directorio Logs[2006].
Move-Item -LiteralPath 'Logs[Sept`06]' -Destination 'Logs[2006]'
El parámetro LiteralPath se usa en lugar de Path, ya que el nombre del directorio original incluye caracteres de corchete izquierdo y corchete derecho ([ y ]). La ruta de acceso también se incluye entre comillas simples ('), de modo que el símbolo de la barra diagonal (`) no se malinterprete.
El parámetro Destination también debe incluirse entre comillas simples, ya que incluye corchetes que se pueden interpretar incorrectamente.
Parámetros
-Confirm
Le pide confirmación antes de ejecutar el cmdlet.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | cf |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Credential
Nota:
Este parámetro no es compatible con ningún proveedor instalado con PowerShell. Para suplantar a otro usuario o elevar las credenciales al ejecutar este cmdlet, use Invoke-Command.
Propiedades del parámetro
| Tipo: | PSCredential |
| Valor predeterminado: | Current user |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-Destination
Especifica la ruta de acceso a la ubicación donde se mueven los elementos. El valor predeterminado es el directorio actual. No se permiten comodines.
Para cambiar el nombre del elemento que se va a mover, especifique un nuevo nombre en el valor del parámetro destination de
Propiedades del parámetro
| Tipo: | String |
| Valor predeterminado: | Current directory |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | 1 |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-Exclude
Especifica, como matriz de cadenas, un elemento o elementos que este cmdlet excluye en la operación. El valor de este parámetro define el parámetro Path. Escriba un elemento de ruta o patrón, como *.txt. Se permite el uso de caracteres comodín. El parámetro Exclude solo es efectivo cuando el comando incluye el contenido de un elemento, como C:\Windows\*, donde el carácter comodín especifica el contenido del directorio C:\Windows.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Filter
Especifica un filtro para calificar el parámetro Path. El proveedor de FileSystem es el único proveedor de PowerShell instalado que admite el uso de filtros. Puede encontrar la sintaxis del lenguaje de filtro de FileSystem en about_Wildcards. Los filtros son más eficaces que otros parámetros, ya que el proveedor los aplica cuando el cmdlet obtiene los objetos en lugar de que PowerShell filtre los objetos una vez recuperados.
Propiedades del parámetro
| Tipo: | String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Force
Obliga a que el comando se ejecute sin pedir confirmación del usuario. La implementación varía de proveedor a proveedor. Para obtener más información, consulte about_Providers.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Include
Especifica, como matriz de cadenas, un elemento o elementos que este cmdlet incluye en la operación. El valor de este parámetro define el parámetro Path. Escriba un elemento de ruta o patrón, como *.txt. Se permite el uso de caracteres comodín. El parámetro Include solo es efectivo cuando el comando incluye el contenido de un elemento, como C:\Windows\*, donde el carácter comodín especifica el contenido del directorio C:\Windows.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-LiteralPath
Especifica una ruta de acceso a una o varias ubicaciones. El valor de LiteralPath se usa tal como está escrito. Ninguno de los caracteres se interpreta como caracteres comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples ('). Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.
Para obtener más información, consulte sobre_las_normas_de_citación.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | PSPath, LP |
Conjuntos de parámetros
LiteralPath
| Posición: | Named |
| Mandatory: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-PassThru
Devuelve un objeto que representa el elemento movido. De forma predeterminada, este cmdlet no genera ninguna salida.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Path
Especifica la ruta de acceso a la ubicación actual de los elementos. El valor predeterminado es el directorio actual. Se permite el uso de caracteres comodín.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | Current directory |
| Admite caracteres comodín: | True |
| DontShow: | False |
Conjuntos de parámetros
Path
| Posición: | 0 |
| Mandatory: | True |
| Valor de la canalización: | True |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-WhatIf
Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | Wi |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
CommonParameters
Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.
Entradas
String
Puede enviar una cadena que contenga una ruta de acceso a este cmdlet.
Salidas
None
De forma predeterminada, este cmdlet no devuelve ninguna salida.
PSObject
Cuando se usa el parámetro passThru, este cmdlet devuelve un objeto que representa el elemento movido.
Notas
PowerShell incluye los siguientes alias para Move-Item:
Todas las plataformas:
mimove
Windows:
mv
Este cmdlet moverá los archivos entre unidades compatibles con el mismo proveedor, pero solo moverá directorios dentro de la misma unidad.
Dado que un comando
Move-Itemmueve las propiedades, el contenido y los elementos secundarios de un elemento, todos los movimientos son recursivos de forma predeterminada.Este cmdlet está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escriba
Get-PSProvider. Para obtener más información, consulte about_Providers.