Команда Dir: Как показать только дату созданного файла и созданный файл .txt из него - PullRequest
0 голосов
/ 28 июня 2019

Я знаю, что dir /b показывает только имя файла.и dir /b /o:-d показывает только имя файла и сортирует его по последней дате.

Можно ли вызвать dir, который показывает только дату создания файла (без указания размеров или имен) и создания .txtфайлы из него?

ожидаемый результат такой:

28/06/2019 13:13 
28/06/2019 12:12
28/06/2019 11:11 
....

Ответы [ 2 ]

1 голос
/ 01 июля 2019

Команда 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 возвращает дату / время последнего изменения.

Учитывая, что оба вышеупомянутых подхода возвращают значения даты / времени в зависимости от локали.

1 голос
/ 28 июня 2019

Вы не можете сделать это с одним dir, но вы можете постобработать его вывод с помощью цикла for /f:

for /f "tokens=1,2" %a in ('dir /a-d /o-d') do @echo %a %b|find ":"' 

Примечание: это синтаксис командной строки. Для использования в командном файле используйте %% вместо %

dir /a-d показывает только файлы (без папок).
|find ":" показывает только строки, которые имеют двоеточие (как во времени 12:34), подавляя итоговые строки.
"tokens=1,2" берет первые два «слова» (разделенных пробелами или табуляцией), поэтому дата (первый токен идет до %a) и время (второй токен идет до %b).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...