Movendo arquivos / pastas ocultos com a linha de comando ou arquivo em lote

15

Pergunta

Alguém sabe de uma maneira de mover arquivos e pastas que têm o atributo oculto, de sistema ou somente leitura definido na linha de comando ou em um arquivo em lotes? (Não, remover os atributos primeiro não é uma opção, já que não há nenhuma maneira prática de saber quais atributos foram definidos para redefini-los após a mudança.)


Tentativas (com falha)

  1. Usando o comando básico move não funciona com itens com o oculto ou conjunto de atributos do sistema e, por algum motivo, não tem opções para especificar atributos como os comandos dir e del .

  2. Eu tentei usar um utilitário que usei a função de operação de arquivo do shell, mas isso requer o uso de start /w para evitar que o arquivo em lote seja executado adiante e reclama do suporte a nomes longos por algum motivo.

  3. Eu tentei usar robocopy , mas primeiro copia os arquivos e, em seguida, exclui os originais em vez de simplesmente mover a origem (o que resulta em uma frustrante atraso, mesmo com a saída excessiva redirecionada para nul ).

(Surpreendentemente, parece que poucas pessoas já precisaram mover arquivos ocultos de Na linha de comando, tudo o que consegui encontrar foi esta pessoa quem abandonou a tentativa.)

    
por Synetech 22.02.2012 / 23:51

5 respostas

5

Eu consegui mover com êxito arquivos ocultos somente leitura usando MV.EXE dos utilitários GNU para Win32. O arquivo de destino mantém os atributos ocultos somente leitura.

Você terá que baixar o pacote inteiro:

link

    
por 23.03.2012 / 01:29
3

Acabei de fazer isso usando:

xcopy /H hidden_file destination_file
del /AH hidden_file
    
por 25.06.2013 / 16:55
3

Powershell v2:

move-item -force   '--1.txt' newdirectory

também move arquivos ocultos com conjuntos de atributos ocultos e do sistema. Irá trabalhar com arquivos começando com '-'.

    
por 24.03.2012 / 00:15
0

Que tal isso?

C:\Temp>attrib hidden.txt
A   H        C:\temp\hidden.txt

C:\Temp>mklink /H renamed.txt hidden.txt
Hardlink created for renamed.txt <<===>> hidden.txt

C:\Temp>del /AH hidden.txt

C:\Temp>attrib renamed.txt
A   H        C:\temp\renamed.txt
    
por 11.07.2013 / 00:15
0

Tivemos o PowerShell e o comando mv . Para completar, portanto, aqui está como fazer isso com TCC / LE da JP Software, cujos comandos move e ren têm uma opção /a: que é comum a muitos de seus comandos que varre os diretórios para os arquivos operarem:

[C:\Users\JdeBP]touch /c --wibble--
11/03/2014 20:29:18.868  C:\Users\JdeBP\--wibble--

[C:\Users\JdeBP]attrib +h +s .\--wibble--
___A___________ -> _HSA___________  C:\Users\JdeBP\--wibble--

[C:\Users\JdeBP]move /a:hs --wibble-- --wobble--
C:\Users\JdeBP\--wibble-- -> C:\Users\JdeBP\--wobble--
     1 file moved

[C:\Users\JdeBP]ren /a:hs --wobble-- --wurble--
C:\Users\JdeBP\--wobble-- -> C:\Users\JdeBP\--wurble--
     1 file renamed

C:\Users\JdeBP]dir /a:hs /t /m /k --wurble--
11/03/2014  20:29               0  _HSA___________  --wurble--

[C:\Users\JdeBP]

Leitura adicional

  • Software JP. MOVER . Take Command / TCC Help.
  • Software JP. REN . Take Command / TCC Help.
por 11.03.2014 / 21:40