Código de lote:
echo %date%
Saída:
03/04/2024
Preciso converter a saída para:
April 03,2024
No Powershell eu posso fazer isso com:
date -f 'MMMM dd,yyyy'
Qual código eu preciso para fazer isso em lote puro?
Não ligando para o Powershell
Este
.bat
arquivo irá extrair as partes da data:Muitas vezes me pego querendo ter a data e/ou hora atual disponível em um arquivo em lote, dividida em seus componentes individuais. Um exemplo típico é quando desejo criar um arquivo de saída todos os dias, mas quero que o arquivo seja único, para que não pise no arquivo de saída de ontem.
Aqui está um exemplo de arquivo em lote de Rob van der Woude mostrando como fazer isso. Ao analisar os tokens da parte "prompt $D $T", em combinação com os tokens da segunda linha de saída do comando "date", isso irá lidar com qualquer formato de data (como mm-dd-aa, dd- mm-aa e assim por diante). Ele coloca os sete componentes de data e hora (dia da semana, mês, dia, ano, hora, minuto e segundo) em sete variáveis (dow, mm, dd, yy, hh, min e ss). Agora você pode fazer o que quiser com eles (dentro do bloco setlocal/endlocal, é claro).
Isso deve lhe dar os blocos de construção para fazer quase tudo o que quiser. A única peça que falta é obter o nome completo do mês "Abril". Vou continuar trabalhando nisso.