Questão
Alguém sabe como mover arquivos e pastas que possuem o atributo oculto, sistema ou somente leitura definido na linha de comando ou em um arquivo em lotes? (Não, excluir os atributos primeiro não é uma opção, pois não há uma maneira prática de saber quais atributos foram configurados para reconfigurá-los após a movimentação.)
(Tentativas falhas
O uso do
move
comando básico não funciona com itens com o atributo oculto ou do sistema definido e, por algum motivo, ele não possui opções para especificar atributos como os comandosdir
edel
.Tentei usar um utilitário que escrevi que usa a função de operação de arquivo do shell, mas que requer o uso
start /w
para impedir a execução do arquivo em lotes e queixa-se do suporte a nomes longos por algum motivo.Tentei usar
robocopy
, mas ele primeiro copia os arquivos e exclui os originais em vez de simplesmente mover a fonte (o que resulta em um atraso frustrante, mesmo com a saída excessiva redirecionada paranul
).
(Surpreendentemente, parece que poucas pessoas já precisaram mover arquivos ocultos da linha de comando. Tudo o que pude encontrar foi essa pessoa que abandonou a tentativa.)
fonte
\temp
diretório, por que não renomear / mover o%1
diretório para\temp
? Ou esse é apenas o caso simplificado?Respostas:
Consegui mover com êxito arquivos ocultos somente leitura usando o MV.EXE dos utilitários GNU for Win32. O arquivo de destino mantém os atributos ocultos somente leitura.
Você terá que baixar o pacote inteiro:
http://gnuwin32.sourceforge.net/downlinks/coreutils-bin-zip.php
fonte
--
; pensa que é um argumento em vez de um nome de arquivo.mv .\--1.txt newdirectory
--foo
para denotar argumentos de linha de comando. Para dar suporte a nomes de arquivos iniciados com--
, a maioria deles aceita um argumento especial--
para indicar o final dos argumentos da linha de comando e o início dos nomes dos arquivos. Não tenho certeza semv
é um desses comandos, mas se for, você deve ser capaz de: #mv -- --weirdFileName.gotcha betterFileName.txt
Acabei de fazer isso usando:
fonte
robocopy
, mas primeiro copia os arquivos e exclui os originais em vez de simplesmente mover a fonte (o que resulta em um atraso frustrante, ...). ”Powershell v2:
também move arquivos ocultos com atributos ocultos e de sistema definidos. Trabalhará com arquivos começando com '-'.
fonte
Tab
para concluir um nome de arquivo leva> 1 segundo, o que é necessário de magnitude mais lenta do que emcmd
. então, se você estiver disposto a me comprar um novo sistema, em seguida, PS não vai ajudar).mv .oldfile .newfile
Que tal agora?
fonte
Tivemos o PowerShell e o
mv
comando. Portanto, para completar, veja como fazê-lo com o TCC / LE da JP Software , cujos comandosmove
eren
têm uma/a:
opção comum a muitos de seus comandos que examinam diretórios em busca de arquivos nos quais operar:Leitura adicional
fonte