Как я могу получить текстовый список или дамп данных имен файлов из каталога Windows? У меня есть продолжающий набор папки:
[My Documents]
--SomeFileName.doc
--AnotherFileName.bmp
--AnotherMoreFileName.zip
--...
Я хочу получить все имена файлов файлов, которые являются в папке (Мои Документы) во всего одном процессе и делают имена файлов как список, который я могу скопировать в Блокнот.
В настоящее время мой процесс должен поразить F2, чтобы выделить имя файла файла и поразить CTRL+C, чтобы скопировать и вставить его в Блокнот, затем сложить его к списку. Я хочу смочь получить те имена файлов быстрым и простым путем.
Я хочу избежать любого внешнего программного обеспечения если возможный; я просто хочу использовать программное обеспечение, которое установлено на моем ноутбуке (Office и Windows XP, хотя Vista или Windows 7 не были бы слишком плохи для знания).
Открытая командная строка.
cd %homedrive%%homepath%\My Documents
dir /b > filenames.txt
filenames.txt
будет содержать список всех Ваших файлов.
Откройте powershell и введите следующее:
PS> cd "~\My Documents"
PS> ls | Where-Object {!($_.PSIsContainer)} | foreach-object {add-content -path filelist.txt -value $_.name}
Что происходит, вот Вы ls
(список), который все файлы в каталоге и отправляют тому списку через фильтр, который удаляет каталоги (где - объект не является контейнером). Затем Вы отправляете фильтрованный список в цикл, который добавляет имена файлов к Вашему txt файлу по одному. $_
представляет объект в списке.
Можно сделать все виды другого интересного материала с этим как добавление -recurse
на команду ls, которая дала бы Вам всем файлы во всех каталогах под текущим каталогом.
Можно заменить $_.name
с $_.fullName
получить полный путь, или $_.Extension
для расширения. См. документацию для fileinfo класса в MSDN для наблюдения всего интересного материала, который можно сделать с объектом fileinfo.