Separando palavras-chave de uma linha de texto em lote

1

Eu sou reconhecidamente novo em usar comandos em lote, então não tenho certeza se isso é possível, se não for, por favor me avise. Recentemente eu fiz um comando em lote simples para listar os diretórios de todos os arquivos terminados em .exe e colocá-los em um arquivo de texto que estou chamando de testpaths.txt

dir C:\*.exe /s /b >> testpaths.txt

Este comando funciona como pretendido e lista o diretório inteiro como este

C:\Windows\notepad.exe

O que eu quero fazer é escrever um script pesquisando este documento e separar, por falta de um termo melhor, a parte da string que diz * .exe, então parece

notepad.exe

Eu estou totalmente perdida em relação a onde ou como eu poderia fazer isso, já que sou novo nisso. Qualquer ajuda seria muito apreciada, obrigado!

    
por eternalnight 14.06.2017 / 11:08

1 resposta

0

Como faço para extrair o nome do arquivo de uma lista de arquivos?

Use o seguinte arquivo em lotes:

@echo off
setlocal enabledelayedexpansion
dir C:\*.exe /s /b >> testpaths.txt
rem read the file one line at a time
for /f "usebackq" %%i in ('type testpaths.txt') do (
  rem extract the filename
  echo %%~nxi
  )
endlocal

Leitura Adicional

por 14.06.2017 / 11:28