Como posso criar um arquivo de texto com valores em dólar a partir dos seguintes nomes de arquivo?
20160516 jcca.15144 115.00 anRtn.pdf
20160408 DunPrint.poster 90.85 29725-1.pdf
20160505 bpSouth.fuel 59.71.jpg
Use o seguinte arquivo de lote (ExtractPrices.cmd):
@echo off
Setlocal EnableDelayedExpansion
for /f "usebackq tokens=*" %%a in ('dir /b %1') do (
for /f "tokens=3" %%b in ("%%~na") do (
echo %%b>>prices.txt
)
)
Uso:
ExtractPrices directory
-
directory
é o nome de um diretório que contém os arquivos a serem processados -
Os valores em dólar são extraídos dos nomes dos arquivos e gravados em
prices.txt
, localizados no mesmo diretório do arquivo em lotes.
Exemplo de saída:
F:\test>dir /b files
20160408 DunPrint.poster 90.85 29725-1.pdf
20160505 bpSouth.fuel 59.71.jpg
20160516 jcca.15144 115.00 anRtn.pdf
F:\test>ExtractPrices.cmd files
F:\test>type prices.txt
90.85
59.71
115.00
Quando eu tiver um arquivo de texto com valores em dólares, provavelmente processarei isso no excel
Esta é uma boa ideia. Embora a aritmética possa ser feita em arquivos em lote, é difícil e tem limitações - ela só pode manipular inteiros de 32 bits.
No entanto, existem soluções alternativas se você realmente quiser usar arquivos em lote para a aritmética.
Veja Matemática em arquivos em lote do NT para obter mais informações.
Leitura Adicional
- Um índice A-Z da linha de comando do Windows CMD - Uma excelente referência para todas as coisas relacionadas à linha do Windows cmd.
- para / f - Comando Loop contra os resultados de outro comando.
- parâmetros - Um argumento de linha de comando (ou parâmetro) é qualquer valor passado para um script em lote.