A inclusão de% date% na criação de logfile está resultando em “caminho não encontrado erro”

0

Eu estou tentando criar arquivos de log dinamicamente nomeados com base na data de hoje. Estou usando os exemplos encontrados na web, mas nenhum deles parece estar funcionando para mim.

C:\Users\Amit>echo hello > %date%.txt
The system cannot find the path specified.

C:\Users\Amit>echo hello > %date%.txt
The system cannot find the path specified.

C:\Users\Amit>echo hello > %date%.dat
The system cannot find the path specified.

C:\Users\Amit>echo hello > %date%.dat
The system cannot find the path specified.



C:\Users\Amit>echo hello > "%date%.dat"
The system cannot find the path specified.

C:\Users\Amit>echo hello > test.txt    #this works



C:\Users\Amit>echo hello >  %date%.txt
The system cannot find the path specified.

C:\Users\Amit>echo "testfile" >> backup-%DATE%.txt
The system cannot find the path specified.

C:\Users\Amit>echo "testfile" > backup-%DATE%.txt
The system cannot find the path specified.

Estou copiando e colando um monte deles também. Estou usando o Windows 7 .

Eu não consigo descobrir qual erro eu estou cometendo.

Obrigado.

    
por moondra 14.01.2018 / 20:33

1 resposta

1

Conforme comentado, você pode obter as partes da data por extração:

::  0123456789    offset table
::  12/01/2018    example of %DATE%, dependent on locale/country
set YYYY=%DATE:~6,4%
set DD=%DATE:~0,2%
set MM=%DATE:~3,2%

echo hello > %DD%_%MM%_%YYYY%.txt

Os erros que você recebe são causados por barras na saída %DATE% . Essas barras não são toleradas dentro de nomes de arquivos.

    
por 14.01.2018 / 23:21