Quero criar um lote e preciso encontrar um arquivo específico, é possível encontrá-lo? Tem que ser um comando que pesquise todas as unidades até encontrar o arquivo, quero que seja utilizável por todos.
Por exemplo, quero encontrar "FarCry4.exe", preciso que seja universal para outras pessoas, porque talvez algumas pessoas não tenham o Far Cry 4 instalado no diretório padrão, como eu.
Eu tentei findstr /x /c:"FarCry4" *.exe
, mas depois de concluir ele apenas me diz que não pode ser aberto e fecha automaticamente.
É possível com o findstr
comando ou o usuário tem que trocar o caminho dele pelo meu?
Responder1
É possível com o comando findstr
FindStr "Procura por strings em arquivos" (veja findstr /?
). Portanto, seu comando está procurando a string "FarCry4" DENTRO de todos os EXEs, não tem nada a ver com nomes de arquivos.
Por exemplo, quero encontrar "FarCry4.exe", preciso que seja universal para outras pessoas, porque talvez algumas pessoas não tenham o Far Cry 4 instalado no diretório padrão.
Você pode usar dir
a /s
opção de pesquisar todos os subdiretórios do atual.
Vá para a raiz da unidade (ou seja c:\
) e execute o seguinte:
dir FarCry4.exe /s /b 2>null
Você precisará executar isso para cada unidade do sistema que deseja pesquisar.
Isso /b
causará uma saída "nua", portanto não haverá cabeçalhos e cada um dos arquivos encontrados incluirá seu caminho completo.
Execute dir /?
para obter mais informações sobre as opções do Dir, e isso 2>null
fará com que os erros relatados pelo Dir (acesso negado, caminho muito longo, etc.) sejam redirecionados paraNuloem vez da tela.