
Percebi que nem cmd
posso powershell
fazer pesquisa recursiva de arquivos em arquivos com o atributo oculto.
Então, há alguma maneira de contornar isso? Quero dizer, exceto ter que remover o atributo oculto do arquivo ou arquivos em questão, para os quais eu precisaria saber sua localização de antemão, o que obviamente tornaria todo o exercício sem sentido.
Por que não está funcionando com arquivos que possuem o atributo oculto? Isso é algum tipo de recurso de segurança?
Exemplo (cmd)
C:\>dir /b
Intel
PerfLogs
plant
Program Files
Program Files (x86)
Users
Windows
C:\>cd plant
C:\plant>dir /b
banana.txt
C:\plant>attrib banana.txt
A C:\plant\banana.txt
C:\plant>attrib -a +h banana.txt
C:\plant>dir /b
C:\plant>dir /b banana.txt
File Not Found
C:\plant>cd /
C:\>dir /b /s banana.txt
File Not Found
C:\>
Responder1
Para listar arquivos ocultos usandoPowerShellvocê terá que usar o -Force
parâmetro. Assim, ao usá-lo, Get-ChildItem -Force -Recurse
você obterá uma lista de todos os arquivos, incluindo arquivos ocultos.
Get-Help Get-ChildItem -Examples
:
O parâmetro Force adiciona arquivos ocultos à exibição.
Sim, não é intuitivo e a descrição do parâmetro em si não informa.
Para a linha de comando em si, seria dir /A
ou dir /AH
listar apenas os arquivos ocultos, mas não tenho certeza de como você pesquisaria essa saída.
Responder2
No prompt de comando do Windows, use as opções /a e /s para todos os arquivos e recursivas:
/A Displays files with specified attributes.
/S Displays files in specified directory and all subdirectories.
Exemplo
dir/a/s
No Powershell eu uso o mesmo método apenas com -force em vez de /a para mostrar todos os arquivos:
dir -force -s
ou
dir -force -r
Também existe ls no Powershell para digitar 1 caractere a menos!
ls -force -s
ou
ls -force -r
Responder3
Finalmente a resposta foi:
DMC:
dir /a:H /s
POWERSHELL:
ls -ah -recurse
(opção -força)