Когда ко мне обратились с вопросом о том, как быстро вывести список файлов в текстовый файл, я понял, что не знаю ответа. Хотя задача оказалась довольно обычной. Это может понадобиться для отправки списка файлов эксперту (для решения проблемы), для самостоятельного ведения журнала содержимого папок и для других целей.
Было решено восполнить пробел и подготовить учебник по этой теме, в котором будет показано, как получить список файлов (и вложенных папок) в папке Windows с помощью командной строки, а также как автоматизировать этот процесс, если задача возникает часто.
Получение текстового файла с содержимым папки в командной строке
- Запустите командную строку от имени администратора.
- Введите cd x:\папка\ где x:\folder\ — полный путь к папке, список файлов из которой вы хотите получить. Нажмите Enter.
- Введите команду dir /a /-p /o:gen >files.txt (где файлы.txt — это текстовый файл, в котором будет сохранен список файлов). Нажмите Enter.
- Если вы используете команду с параметром /b (dir /a /b /-p /o:gen >файлы.txt), полученный список не будет содержать никакой дополнительной информации о размерах файлов или дате создания — только список имен.
Выполнено. В результате будет получен текстовый файл, содержащий необходимую информацию. В приведенной выше команде этот документ сохраняется в той же папке, список файлов из которой вы хотите получить. Вы также можете вывести вывод в текстовый файл, в этом случае список будет отображаться только в командной строке.
Кроме того, для пользователей русской версии Windows следует учесть тот факт, что файл сохраняется в кодировке Windows 866, то есть вместо русских символов в Блокноте вы увидите иероглифы (но вы можете использовать для просмотра альтернативный текстовый редактор, например Sublime Text).
Получение списка файлов с помощью Windows PowerShell
Вы также можете получить список файлов в папке с помощью команд Windows PowerShell. Если вы хотите сохранить список в файл, запустите PowerShell от имени администратора, если вы хотите просто просмотреть его в окне — просто запустите.
Примеры команд:
- Get-Childitem -Path C:\Folder — выводит в окне Powershell список всех файлов и папок, находящихся в папке Folder на диске C.
- Get-Childitem -Path C:\Folder | Out-File C:\Files.txt — для создания текстового файла Файлы.txt со списком файлов в папке.
- Добавление параметра -Recurse к первой описанной команде выводит в списке также содержимое всех вложенных папок.
- Параметры -File и -Directory позволяют получить список только файлов или только папок, соответственно.
Утилита Microsoft Fix it для печати содержимого папки
На странице https://support.microsoft.com/en-ru/kb/321379 существует утилита Microsoft Fix It, которая добавляет в контекстное меню проводника пункт "Print Directory Listing", который печатает список файлов в папке.
Хотя эта программа предназначена только для Windows XP, Vista и Windows 7, она успешно работала на Windows 10, просто запустите ее в режиме совместимости.
Кроме того, на этой же странице показано, как вручную добавить команду для отображения списка файлов в Проводнике, причем вариант для Windows 7 аналогичен варианту для Windows 8.1 и 10. А если вам не нужен вывод на печать, вы можете немного подправить предложенные Microsoft команды, удалив параметр /p в третьей строке и опустив четвертую строку вообще.