Пакетный код, который будет печатать список того, что находится в папке "Последние элементы"
Я пытаюсь получить пакетный код для печати только Дата изменения и Имя каждого файла (больше свойств в порядке, мне просто нужны эти два) в папке "Недавние элементы". Я пробовал несколько кодов, но, к сожалению, это не будет работать, любое направление будет с благодарностью.
2 ответа
Последние пункты находятся здесь:
%userprofile%\Appdata\Roaming\Microsoft\Windows\Recent
Но он содержит только ссылки (.lnk
файлы) к недавно открытым элементам. Так
dir /o:d /t:c "%userprofile%\Appdata\Roaming\Microsoft\Windows\Recent"
Перечислю их, но будет сложно отличить файлы от каталогов.
Вот как вы можете получить больше информации с помощью запроса WMIC (может быть медленным):
WMIC DATAFILE WHERE "PATH='\\Users\\username\\Appdata\\Roaming\\Microsoft\\Windows\\Recent\\' " GET LastAccessed, LastModified, Name, FileSize
Принимая во внимание все обсуждения в чате:
1.
Чтобы получить "недавнюю" папку:
`For /F "tokens=1,2*" %%G in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v recent ^|Find /I "recent"') do @echo G="%%G" H="%%H" I="%%I"`
и тогда вы могли бы заменить это @echo G="%%G" H="%%H" I="%%I"
с set "recentfldr=%%I"
и продолжить с dir "%recentfldr%\"
и т.п.
2.
Ждать пока dir
команда заканчивается (добавить переключатели для dir
ad libitum, но примечание ускользнуло от оператора перенаправления ^>
):
start "" /wait cmd /C dir /s "%recentfldr%\" ^> "%temp%\afile.txt"
3.
Чтобы отправить текстовый файл на принтер по умолчанию:
%SystemRoot%\system32\NOTEPAD.EXE /p "%temp%\afile.txt"
Удачи!