Может ли пакетный файл изменить системную дату; сохранить файл с атрибутами; изменить дату обратно на текущую дату? - PullRequest
1 голос
/ 09 сентября 2010

Может ли пакетный файл изменить системную дату; сохранить файл с атрибутами; изменить дату обратно на текущую дату?

Цель сохранить MYFILE.TXT с датой 01-01-2010

с помощью пакетных команд.

Я пытался установить дату = 01-01-2010

и затем сохраните файл, но он не сработал.

Разве это невозможно?

@echo off
rem to Run this Batch file as administrator

date 01-01-2010
echo %date%
pause
echo Hello World > test.txt

date 09-08-2010

echo %date%
pause

goto :eof

Примечание. Если мы не запустили «Запуск от имени администратора» Он создает сообщение об ошибке «Требуемая привилегия не удерживается клиентом».

Ответы [ 2 ]

5 голосов
/ 09 сентября 2010

Лучше всего взять touch из GNUWin32 и использовать его для изменения меток времени.Делать это, изменяя системную дату, все равно что использовать кувалду, чтобы сломать гайку.

3 голосов
/ 09 сентября 2010

Да, пакетный файл может сделать это, но я бы не рекомендовал это.Чтобы установить дату в Windows, вы используете команду DATE.Чтобы установить дату 01/01/2010, вы должны выполнить эту команду в командной строке:

date 01-01-2010

Однако для работы вам потребуются права администратора.

Чтобы изменить время, команда - ВРЕМЯ.

Вы можете просмотреть обе команды с помощью ПОМОЩИ.то есть

help date
help time

Также можно получить текущую дату, используя пакетный файл, чтобы вы могли заново установить дату после внесения изменений.Это несколько сложнее. Вот один из способов сделать это .

Все, что сказано, я согласен с Джеком Келли: получите утилиту touch.

...