Как отобразить текст в файл, где префикс файла состоит из одного или нескольких env. переменные с пробелами в них? - PullRequest
0 голосов
/ 16 апреля 2011

2 окр.vars, установленные ранее

overall_timestamp_first=2011-03-14 20:40:49
overall_timestamp_last=2011-03-15 02:55:20

Команда в командном файле, которую я пытаюсь использовать для создания файла с помощью env.vars.

echo Application Error Event Analysis > "%overall_timestamp_first% - %overall_timestamp_last%.doc"

Ответы [ 2 ]

1 голос
/ 16 апреля 2011

Имена файлов не могут содержать : в Windows.Это не имеет ничего общего с пробелами (которые вы правильно решили, заключив имя файла в кавычки).

Поэтому удалите двоеточия (или замените их другим действительным символом) из ваших переменных;либо при установке их, либо непосредственно в вашей последующей строке:

echo Application Error Event Analysis > "%overall_timestamp_first::=% - %overall_timestamp_last::=%.doc"
1 голос
/ 16 апреля 2011

Двоеточия в имени файла являются проблемой.Они недопустимы в именах файлов в DOS / Windows.

Измените формат отметки времени на hh.mm.ss, и это будет работать:

set overall_timestamp_first=2011-03-14 20.40.49
set overall_timestamp_last=2011-03-14 21.00.00
set overall_filename="%overall_timestamp_first%-%overall_timestamp_last%.txt"
@echo Application Error Event Analysyis > %overall_filename%

Вывод на мою машину:

D:\Temp>dir 2*
 Volume in drive D is Something
 Volume Serial Number is ABCD-DCBA

 Directory of D:\Temp

04/15/2011  09:03 PM                36 2011-03-14 20.40.49-2011-03-14 21.00.00.txt
               1 File(s)             36 bytes
               0 Dir(s)  204,289,437,696 bytes free
...