Как говорит Кристофер Живописец, команда DIR не может сделать это напрямую.
Но есть простая строка командной строки, которая отображает вашу информацию без информации заголовка или нижнего колонтитула. Эта команда содержит только файлы. Он работает до тех пор, пока ваша местность отображает отметки времени, используя 3 элемента, разделенных пробелами. Например, мои метки времени в США отображаются как mm/dd/yyyy hh:mm:ss am
.
for /f "tokens=1-4*" %A in ('dir /a-d /tc^|findstr "^[0-9]"') do @echo %E %A %B %C %~tE
Изменение /a-d
в /a
, если вы хотите включить каталоги. Или просто удалите /a-d
целиком, если вы хотите как файлы, так и каталоги, но вы хотите исключить скрытые и системные файлы/каталоги.
Вот та же команда в отформатированный пакетного сценария:
@echo off
for /f "tokens=1-4*" %%A in (
'dir /a-d /tc^|findstr "^[0-9]"'
) do echo %%E %%A %%B %%C %%~tE
мне не нравится формат вывода с именем файла в передней, так как ширина имя меняется - это трудно прочитайте вывод, потому что столбцы не выстраиваются в линию. Я предпочитаю, чтобы поставить имя файла в конце:
@echo off
for /f "tokens=1-4*" %%A in (
'dir /a-d /tc^|findstr "^[0-9]"'
) do echo %%A %%B %%C %%~tE %%E
Почему? :) Серьезно .. это хорошая мысль (+1 для этого), но сценарий .bat не имеет цели в 2014 году. Если вы действительно хотите писать сценарии на платформе Windows, они должны смотреть на PowerShell. –
Ты супер парень с множеством талантливых способностей, как играть на флейте :) Хотя это слишком медленно, он служит именно тем, что мне нужно. Не могли бы вы объяснить, что это за критические %% A, %% B и так далее? – Jack