Move-Item
Move um item de um local para outro.
Move-Item
[-Path] <String[]>
[[-Destination] <String>]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Move-Item
-LiteralPath <String[]>
[[-Destination] <String>]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
O cmdlet Move-Item
move um item, incluindo suas propriedades, conteúdo e itens filho, de um local para outro. Os locais devem ser suportados pelo mesmo provedor.
Por exemplo, ele pode mover um arquivo ou subdiretório de um diretório para outro ou mover uma subchave do Registro de uma chave para outra. Quando você move um item, ele é adicionado ao novo local e excluído do local original.
Este comando move o arquivo Test.txt
da unidade de C:
para o diretório E:\Temp
e o renomeia de test.txt
para tst.txt
.
Move-Item -Path C:\test.txt -Destination E:\Temp\tst.txt
Este comando move o diretório C:\Temp
e seu conteúdo para o diretório C:\Logs
.
O diretório Temp
e todos os seus subdiretórios e arquivos, em seguida, aparecem no diretório Logs
.
Move-Item -Path C:\Temp -Destination C:\Logs
Exemplo 3: Mover todos os arquivos de uma extensão especificada do diretório atual para outro diretório
Este comando move todos os arquivos de texto (*.txt
) no diretório atual (representado por um ponto (.
)) para o diretório C:\Logs
.
Move-Item -Path .\*.txt -Destination C:\Logs
Exemplo 4: Mover recursivamente todos os arquivos de uma extensão especificada do diretório atual para outro diretório
Este comando move todos os arquivos de texto do diretório atual e todos os subdiretórios, recursivamente, para o diretório C:\TextFiles
.
Get-ChildItem -Path ".\*.txt" -Recurse | Move-Item -Destination "C:\TextFiles"
O comando usa o cmdlet Get-ChildItem
para obter todos os itens filho no diretório atual (representado pelo ponto (.
)) e seus subdiretórios que têm uma extensão de nome de arquivo *.txt
. Ele usa o parâmetro Recurse para tornar a recuperação recursiva e o parâmetro Include para limitar a recuperação a *.txt
arquivos.
O operador de pipeline (|
) envia os resultados desse comando para Move-Item
, que move os arquivos de texto para o diretório TextFiles
.
Se os arquivos que devem ser movidos para C:\Textfiles
tiverem o mesmo nome, Move-Item
exibirá um erro e continuará, mas moverá apenas um arquivo com cada nome para C:\Textfiles
. Os outros arquivos permanecem em seus diretórios originais.
Se o diretório Textfiles
(ou qualquer outro elemento do caminho de destino) não existir, o comando falhará. O diretório ausente não é criado para você, mesmo se você usar o parâmetro Force.
Move-Item
move o primeiro item para um arquivo chamado Textfiles
e, em seguida, exibe um erro explicando que o arquivo já existe.
Além disso, por padrão, Get-ChildItem
não move arquivos ocultos. Para mover arquivos ocultos, use o parâmetro Force com Get-ChildItem
.
Nota
No Windows PowerShell 2.0, ao usar o parâmetro Recurse do cmdlet Get-ChildItem
, o valor do parâmetro Path deve ser um contêiner. Use o parâmetro Include para especificar o filtro de extensão de nome de arquivo *.txt
(Get-ChildItem -Path .\* -Include *.txt -Recurse | Move-Item -Destination C:\TextFiles
).
Este comando move as chaves e valores do Registro dentro da chave do Registro MyCompany
em HKLM\Software
para a chave MyNewCompany
. O caractere curinga (*
) indica que o conteúdo da chave MyCompany
deve ser movido, não a chave em si. Neste comando, os nomes opcionais dos parâmetros Path e Destination são omitidos.
Move-Item "HKLM:\software\mycompany\*" "HKLM:\software\mynewcompany"
Este comando move o diretório Logs[Sept`06]
(e seu conteúdo) para o diretório Logs[2006]
.
Move-Item -LiteralPath 'Logs[Sept`06]' -Destination 'Logs[2006]'
O parâmetro LiteralPath é usado em vez de Path, porque o nome do diretório original inclui caracteres de colchete esquerdo e direito ([
e ]
). O caminho também é colocado entre aspas simples ('
), para que o símbolo de backtick (`
) não seja mal interpretado.
O parâmetro Destination também deve ser colocado entre aspas simples, pois inclui colchetes que podem ser mal interpretados.
Solicita confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Nota
Esse parâmetro não é suportado por nenhum provedor instalado com o PowerShell. Para representar outro usuário ou elevar suas credenciais ao executar esse cmdlet, use Invoke-Command.
Tipo: | PSCredential |
Position: | Named |
Default value: | Current user |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
Especifica o caminho para o local onde os itens estão sendo movidos. O padrão é o diretório atual. Curingas não são permitidos.
Para renomear o item que está sendo movido, especifique um novo nome no valor do parâmetro Destination.
Tipo: | String |
Position: | 1 |
Default value: | Current directory |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | True |
Especifica, como uma matriz de cadeia de caracteres, um item ou itens que esse cmdlet exclui na operação. O valor desse parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como *.txt
. Caracteres curinga são permitidos. O parâmetro Exclude só é efetivo quando o comando inclui o conteúdo de um item, como C:\Windows\*
, onde o caractere curinga especifica o conteúdo do diretório C:\Windows
.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
Especifica um filtro para qualificar o parâmetro Path. O provedor FileSystem é o único provedor do PowerShell instalado que oferece suporte ao uso de filtros. Você pode encontrar a sintaxe do FileSystem linguagem de filtro em about_Wildcards. Os filtros são mais eficientes do que outros parâmetros, porque o provedor os aplica quando o cmdlet obtém os objetos em vez de fazer com que o PowerShell filtre os objetos depois que eles são recuperados.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
Força o comando a ser executado sem pedir a confirmação do usuário. A implementação varia de fornecedor para fornecedor. Para obter mais informações, consulte about_Providers.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Especifica, como uma matriz de cadeia de caracteres, um item ou itens que esse cmdlet inclui na operação. O valor desse parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como *.txt
. Caracteres curinga são permitidos. O parâmetro Include só é efetivo quando o comando inclui o conteúdo de um item, como C:\Windows\*
, onde o caractere curinga especifica o conteúdo do diretório C:\Windows
.
Tipo: | String[] |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
Especifica um caminho para um ou mais locais. O valor de LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples ('
). Aspas simples dizem ao PowerShell para não interpretar nenhum caractere como sequências de escape.
Para obter mais informações, consulte about_Quoting_Rules.
Tipo: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
Retorna um objeto que representa o item movido. Por padrão, esse cmdlet não gera nenhuma saída.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Especifica o caminho para o local atual dos itens. O padrão é o diretório atual. Caracteres curinga são permitidos.
Tipo: | String[] |
Position: | 0 |
Default value: | Current directory |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | True |
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Você pode canalizar uma cadeia de caracteres que contenha um caminho para esse cmdlet.
None
Por padrão, esse cmdlet não retorna nenhuma saída.
Quando você usa o parâmetro PassThru, esse cmdlet retorna um objeto que representa o item movido.
O PowerShell inclui os seguintes aliases para Move-Item
:
Todas as plataformas:
mi
move
Janelas:
mv
Esse cmdlet moverá arquivos entre unidades suportadas pelo mesmo provedor, mas moverá diretórios somente dentro da mesma unidade.
Como um comando
Move-Item
move as propriedades, o conteúdo e os itens filho de um item, todas as movimentações são recursivas por padrão.Este cmdlet foi projetado para trabalhar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis em sua sessão, digite
Get-PSProvider
. Para obter mais informações, consulte about_Providers.
Comentários do PowerShell
O PowerShell é um projeto código aberto. Selecione um link para fornecer comentários: