Powershell вывести содержимое каталога windows

Concerning your code in the question.

Your command should have worked as is. You are, in fact, already calling Get-ChildItem. If you check Get-Alias you will see what I’m trying to tell you.

PS C:\users\Cameron\Downloads> Get-Alias dir

CommandType     Name                                               ModuleName                                                                                               
-----------     ----                                               ----------                                                                                               
Alias           dir -> Get-ChildItem  

You code translates to

Get-ChildItem -Recurse "C:\temp" | Select Fullname

Again, I’m not sure why your code does not generate output since that is perfectly fine on a folder that contains files or directories. Might be an issue with the positional parameter maybe? What is your PowerShell version? ( Use Get-Host).

The code you have would send all file paths to console. Did you want that output somewhere else?

About the accepted answer

Pretty sure this code will double up output if you have folders in the path since directory will output to the second Get-ChildItem

Dir -Recurse c:\path\ | Get-Childitem

Consider the following folder tree

C:\TEMP\TEST
│   File1.txt
│   File2.txt
│
└───Folder1
        File3.txt

Consider the two command run against that folder tree.

PS C:\users\Cameron\Downloads> Dir -Recurse c:\temp\test | Select Fullname

FullName                                                                                                                                                                    
--------                                                                                                                                                                    
C:\temp\test\Folder1                                                                                                                                                        
C:\temp\test\File1.txt                                                                                                                                                      
C:\temp\test\File2.txt                                                                                                                                                      
C:\temp\test\Folder1\File3.txt                                                                                                                                              



PS C:\users\Cameron\Downloads> Dir -Recurse c:\temp\test | Get-Childitem | Select Fullname

FullName                                                                                                                                                                    
--------                                                                                                                                                                    
C:\temp\test\Folder1\File3.txt                                                                                                                                              
C:\temp\test\File1.txt                                                                                                                                                      
C:\temp\test\File2.txt                                                                                                                                                      
C:\temp\test\Folder1\File3.txt   

The second command shows two files called File3.txt when in reality there is only one.

Получение списка файлов из папки в WindowsКогда ко мне обратились с вопросом о том, как быстро вывести список файлов в текстовый файл, я понял, что ответа я не знаю. Хотя задача, как оказалось, достаточно часто встречающаяся. Это может потребоваться для передачи списка файлов специалисту (для решения какой-то проблемы), самостоятельного ведения журнала содержимого папок и других целей.

Решено было устранить пробел и подготовить инструкцию на эту тему, в которой будет показано, как получить список файлов (и вложенных папок) в папке Windows средствами командной строки, а также о том, как автоматизировать этот процесс, если задача возникает часто.

Получение текстового файла с содержимым папки в командной строке

Получение списка файлов в командной строке

Сначала о том, как сделать текстовый документ, содержащий список файлов в нужной папке, вручную.

  1. Запустите командную строку от имени администратора.
  2. Введите cd x:\folder\ где x:\folder\ — полный путь к папке, список файлов из которой нужно получить. Нажмите Enter.
  3. Введите команду dir /a /-p /o:gen >files.txt (где files.txt — текстовый файл, в котором будет сохранен список файлов). Нажмите Enter.
  4. Если использовать команду с параметром /b (dir /a /b /-p /o:gen >files.txt), то в полученном списке будет отсутствовать любая дополнительная информация о размерах файлов или дате создания — только список имен.

Готово. В результате будет создан текстовый файл, содержащий необходимую информацию. В команде выше, данный документ сохраняется в той же папке, список файлов из которой требуется получить. Можно также убрать вывод в текстовый файл, в этом случае список будет отображаться только в командной строке.

Полученный текстовый файл со списком

Кроме этого, для пользователей русскоязычной версии Windows следует учитывать то, что файл сохраняется в кодировке Windows 866, то есть в обычном блокноте вместо русских символов вы увидите иероглифы (но можно использовать альтернативный текстовый редактор для просмотра, например, Sublime Text).

Получаем список файлов с помощью Windows PowerShell

Вы также можете получить список файлов в папке используя команды Windows PowerShell. Если вы хотите сохранить список в файл, то запустите PowerShell от имени администратора, если просто просмотреть в окне — достаточно простого запуска.

Сохранение списка файлов в текстовый файл в PowerSehll

Примеры команд:

  • Get-Childitem -Path C:\Folder — вывод списка всех файлов и папок, находящихся в папке Folder на диске C в окне Powershell.
  • Get-Childitem -Path C:\Folder | Out-File C:\Files.txt — создание текстового файла Files.txt со списком файлов в папке Folder.
  • Добавление параметра -Recurse к первой описанной команде выводит в списке также содержимое всех вложенных папок.
  • Параметры -File и -Directory позволяют получить список только файлов или только папок соответственно.

Список файлов, полученный в PowerShell

Выше перечислены далеко не все параметры Get-Childitem, но в рамках описываемой в этом руководстве задачи, думаю, их будет достаточно.

Утилита Microsoft Fix it для печати содержимого папки

На странице https://support.microsoft.com/ru-ru/kb/321379 присутствует утилита Microsoft Fix It, добавляющая в контекстное меню проводника пункт «Print Directory Listing», выводящий список файлов в папке на печать.

Вывод списка файлов на печать через контекстное меню

Несмотря на то, что программа предназначена только для Windows XP, Vista и Windows 7, она успешно сработала и в Windows 10, достаточно было запустить ее в режиме совместимости.

Дополнительно, на той же странице показан порядок ручного добавления команды вывода списка файлов в проводник, при этом вариант для Windows 7 подойдет и для Windows 8.1 и 10. А если вам не требуется вывод на печать, вы можете немного подправить предлагаемые Microsoft команды, удалив параметр /p в третьей строке и полностью убрав четвертую.

Concerning your code in the question.

Your command should have worked as is. You are, in fact, already calling Get-ChildItem. If you check Get-Alias you will see what I’m trying to tell you.

PS C:\users\Cameron\Downloads> Get-Alias dir

CommandType     Name                                               ModuleName                                                                                               
-----------     ----                                               ----------                                                                                               
Alias           dir -> Get-ChildItem  

You code translates to

Get-ChildItem -Recurse "C:\temp" | Select Fullname

Again, I’m not sure why your code does not generate output since that is perfectly fine on a folder that contains files or directories. Might be an issue with the positional parameter maybe? What is your PowerShell version? ( Use Get-Host).

The code you have would send all file paths to console. Did you want that output somewhere else?

About the accepted answer

Pretty sure this code will double up output if you have folders in the path since directory will output to the second Get-ChildItem

Dir -Recurse c:\path\ | Get-Childitem

Consider the following folder tree

C:\TEMP\TEST
│   File1.txt
│   File2.txt
│
└───Folder1
        File3.txt

Consider the two command run against that folder tree.

PS C:\users\Cameron\Downloads> Dir -Recurse c:\temp\test | Select Fullname

FullName                                                                                                                                                                    
--------                                                                                                                                                                    
C:\temp\test\Folder1                                                                                                                                                        
C:\temp\test\File1.txt                                                                                                                                                      
C:\temp\test\File2.txt                                                                                                                                                      
C:\temp\test\Folder1\File3.txt                                                                                                                                              



PS C:\users\Cameron\Downloads> Dir -Recurse c:\temp\test | Get-Childitem | Select Fullname

FullName                                                                                                                                                                    
--------                                                                                                                                                                    
C:\temp\test\Folder1\File3.txt                                                                                                                                              
C:\temp\test\File1.txt                                                                                                                                                      
C:\temp\test\File2.txt                                                                                                                                                      
C:\temp\test\Folder1\File3.txt   

The second command shows two files called File3.txt when in reality there is only one.

При работе на компьютере иногда возникает необходимость получить полный список файлов и папок в каталоге или даже целом томе. Понадобиться он может для самых разных целей, например, для каталогизации, для сравнения, для использования в какой-то базе данных и так далее. В большинстве случаев приходится иметь дело с большим числом объектов, поэтому нечего и думать, чтобы составить такой список вручную.

Если создание списка файлов вручную представляется едва ли возможным, то какая есть тому альтернатива, какие программные инструменты лучше всего подойдут для этих целей? Решений существует несколько, все они очень просты и удобны. Получить список файлов и папок можно с помощью обычной командной строки, с помощью PowerShell, штатного Проводника, любого браузера, а также с помощью сторонних специализированных утилит.

Содержание статьи:

Получаем список файлов и папок в командной строке

Для чтения содержимого каталогов в старой доброй командной строке предусмотрена команда dir, её то как раз мы и будем использовать. Итак, запускаем консоль CMD, командой cd Буква диска:/путь (если нужно перейти в другой диск, добавляем после cd ключ /d) переходим в нужное расположение и выполняем эти две команды:

chcp 1251
dir /b /s > D:\filelist.tхt

Список файлов и папок в командной строке

Первая команда устанавливает кириллическую кодировку, вторая сохраняет список всех файлов, папок и вложенных в них объектов в текстовый лог на диске D.

Текстовый лог

Если нужно получить список только файлов (без вложенных каталогов), достаточно использовать только ключ /b.

Примечание: в Windows 8.1 и 7 для быстрого перехода в папку в командной строке, зажмите Shift, кликните ПКМ по папке и выберите в контекстном меню опцию «Открыть окно команд».

Список файлов и папок в PowerShell

В Windows 10 командная строка заменена консолью PowerShell, для получения списка файлов можете использовать её. Для примера выведем в файл содержимое папки Тест с её подкаталогами:

Get-Childitem -Path D:\Тест -Recurse | Out-File D:\filelist.tхt

PowerShell

А можно и проще. Зажав Shift, кликаем по папке ПКМ, выбираем в меню «Открыть PowerShell здесь».

Открыть PowerShell здесь

И выполняем в открывшемся окне консоли команду Get-Childitem -Recurse | Out-File D:\filelist.tхt.

Get-Childitem

Необходимость использования параметра -Path с указанием пути в данном случае отпадает.

Получение списка файлов или папок в Проводнике

Этот способ позволяет получить список либо файлов, либо папок в конкретном расположении. Заходим в целевую папку, выделяем в ней все файлы или папки, зажимаем Shift, кликаем правой кнопкой мыши и выбираем в меню опцию «Копировать как путь».

Копировать как путь

Пути и имена выделенных объектов будут переданы в буфер обмена, откуда вы уже сможете перенести их в текстовый файл.

Получение списка файлов с помощью DirLister

Для получения хорошо структурированного списка объектов файловой системы можно воспользоваться бесплатной портативной утилитой DirLister, скачав её с официального сайта:

www.barrysoft.it/blog/software/dirlister

Запустив утилиту, укажите в разделе «Directory To Scan» путь к сканируемому каталогу или диску, в разделе «Output File» выберите расположение для сохранения списка.

DirLister

Здесь же можно задать параметры сканирования — выбрать формат, указать, нужно ли включать в список вложенные директории и скрытые объекты, задать поиск по маске. После нажатия кнопки «Make List» список будет сохранён в выбранном расположении.

Используем для получения списка файлов браузер

На худой конец для создания списка файлов и папок на диске можно воспользоваться любым браузером. Перетаскиваем папку или диск на новую вкладку браузера и получаем список имеющихся в ней файлов и каталогов.

Список файлов в браузере

Рекурсивно пройтись по всем вложенным каталогам, правда, не получится да и для копирования путей и имён файлов и переноса их в отдельный файл придется использовать Ctrl + C и Ctrl + V.

Загрузка…

0 / 0 / 0

Регистрация: 30.05.2017

Сообщений: 11

1

10.02.2018, 19:59. Показов 19469. Ответов 1


Студворк — интернет-сервис помощи студентам

Здравствуйте, требуется помощь с задачами, которые нужно выполнить в PowerShell

Вывести содержимое каталога Windows по указанному формату на экран и в текстовый файл: только файлы; сортировать по размеру; Размер >10000.

Заранее большое спасибо, за помощь.



0



KDE777

1883 / 1106 / 427

Регистрация: 22.01.2016

Сообщений: 3,050

11.02.2018, 11:46

2

Лучший ответ Сообщение было отмечено VadimAlekseev как решение

Решение

Цитата
Сообщение от VadimAlekseev
Посмотреть сообщение

Вывести содержимое каталога Windows по указанному формату на экран и в текстовый файл: только файлы; сортировать по размеру; Размер >10000.

PowerShell
1
Get-ChildItem -Path $env:SystemRoot -File | Where-Object Length -gt 10000 | Sort-Object name | Select-Object name | Tee -FilePath C:\Temp\list.txt



1



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

11.02.2018, 11:46

Помогаю со студенческими работами здесь

Создать текстовый файл с не менее 20 целых чисел в диапазоне от -10 до 20, вывести содержимое на экран
Создать текстовый файл, в который записать не менее 20 целых чисел в

диапазоне от -10 до 20….

Работа со строками (Создать текстовый файл, вывести содержимое на экран, определить длину каждого предложения)
Создать текстовый файл . в который вписать 3 предложения .
Прочитать этот файл , вывести его…

Создать папку User6 в корневом каталоге диска D и вывести в текстовый файл содержимое папки C:\Windows
С помощью бат-файла создать папку User6 в корневом каталоге диска D и вывести в текстовый файл…

Вывести в текстовый файл таблицу по указанному правилу
Написать программу, выводящую в текстовый файл таблицу 8×8. Элементы таблицы определяются…

Вывести на экран содержимое каталога со всеми его подкаталогами
Есть папка с музыкой (music). В ней еще одна папка, тоже с музыкой. Задача программы прочитать все,…

Написать bat-файл, выдающий содержимое файлов с расширением txt из текущего каталога на устройстве с: на экран
в) Написать bat-файл, выдающий содержимое файлов с расширением txt из текущего каталога на…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

2

  • Pppoe ростелеком настройка windows 10
  • Powershell версия windows в домене
  • Preparing automatic repair windows 10 что делать
  • Pppoe подключение windows 7 автоматическое подключение
  • Pppoe не подключается автоматически windows 7