Команда dir
отображает дату / время последнего изменения по умолчанию.Чтобы изменить дату / время создания, вам нужно добавить опцию /T:C
.Чтобы вернуть значения даты / времени, используйте for /F
цикл аналогично тому, как показано в Стефан ответ :
for /F "tokens=1,2 eol= " %I in ('dir /A:-D /O:-D /T:C *.*') do @echo/%I %J
Для параметра eol
установлено значение SPACE , чтобы исключить строки, начинающиеся с этого символа, поскольку это относится к вводным и итоговым строкам, которые нам не нужны.Этот метод не основан на фильтрации по локально-зависимому символу.
(Если вы хотите использовать этот код в пакетном файле , изменяйте каждые %
на %%
.)
Для последней даты модификации вы можете просто пропустить /T:C
часть.В качестве альтернативы вы можете использовать простой for
цикл , если вам не нужно сортировать значения даты / времени (по убыванию):
for %I in (*.*) do @echo/%~tI
Модификатор ~t
возвращает дату / время последнего изменения.
Учитывая, что оба вышеупомянутых подхода возвращают значения даты / времени в зависимости от локали.