No seu script:
for %%i in (*.pdf) do @echo %%~ni >> PDF_LIST.txt
O que eu quero fazer parece muito simples:
Eu tenho uma pasta no Windows contendo itens de vários tipos, incluindo arquivos PDF, arquivos TXT e subdiretórios. Estou escrevendo um arquivo .bat de uma linha para puxar SOMENTE os nomes dos arquivos PDF para um novo arquivo de texto.
Até agora, isso é o que eu tenho no .bat:
dir *.pdf /b > PDF_LIST.txt
Isso fornece a seguinte saída em um arquivo PDF_LIST.txt:
A.pdf
B.pdf
C.pdf
Eu gostaria de descartar a parte ".pdf" de cada linha no arquivo txt, já que obviamente já sei que cada arquivo está em formato PDF pelo parâmetro * .pdf em minha declaração de diretório.
Isso tornaria mais fácil copiar / colar todos os nomes de arquivo diretamente do arquivo de texto em um documento do Word para uma transmissão que estou enviando ao meu cliente. Se você puder sugerir uma maneira melhor ou mais fácil de obter a lista de arquivos sem usar um arquivo em lotes, isso também seria útil.
A maioria dos editores de texto (incluindo o bloco de notas) localizou e substituiu. Basta usá-lo para encontrar todos os ".pdf" e substituí-lo por "". Feito:)
Você também pode definir isso como macro na palavra.
Tags command-line windows