Чтобы получить текущую дату в командной строке Windows, используйте следующее:
date /t
Чтобы переименовать файл с текущей датой, вам нужно использовать конструкцию for
чтобы получить выходные данные команды date
и передать ее в ren
:
for /f "useback delims=" %x in (`date /t`) do ren oldfile.foo %x
Обратите внимание, что вывод date
может, в зависимости от ваших региональных настроек, содержать символы, которые нельзя использовать в имени файла, например косую черту (/
). Если это так, у вас есть два варианта:
Отформатируйте дату так, чтобы она подходила для использования в имени файла; см. этот пост в переполнении стека.
Вместо этого используйте PowerShell. Следующее должно сделать трюк:
Rename-Item oldfile.foo (Get-Date -Format yyyy-MM-dd)
В этом примере используется формат даты ISO. См. Форматирование даты и времени для получения дополнительной информации.
Чтобы добавить новую запись в контекстное меню для всех файлов, выполните следующие действия:
Откройте regedit.exe и перейдите к HKEY_CLASSES_ROOT\*\shell
Добавьте новый ключ и задайте его имя, как хотите, чтобы пункт меню вызывался
Добавьте новый ключ под этим, с именем команды
Дважды щелкните значение (по умолчанию) под ключом команды и установите его значение следующим образом:
если используется обычная командная строка (обратите внимание на знаки двойного процента):
cmd /c for /f "useback delims=" %%x in (`date /t`) do ren "%1" %%x
при использовании PowerShell:
cmd /c powershell Rename-Item "%1" (Get-Date -Format yyyy-MM-dd)