Вывести все файлы в папке powershell

Обновлено: 06.07.2024

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

Получение списка файлов и папок, содержащихся в папке

Извлечь все элементы непосредственно из папки можно с помощью командлета Get-ChildItem . Для отображения скрытых и системных элементов добавьте необязательный параметр Force. Например, эта команда отображает непосредственное содержимое диска C Windows PowerShell (которое совпадает с содержимым физического диска C Windows):

Эта команда выводит только элементы, содержащиеся на диске непосредственно, так же как и команда DIR оболочки Cmd.exe или команда ls оболочки UNIX. Для показа вложенных элементов необходимо также указать параметр -Recurse . (Время выполнения этой операции будет очень велико.) Для вывода всего содержимого диска C введите:

Командлет Get-ChildItem позволяет отфильтровать элементы с помощью параметров Path, Filter, Include и Exclude, но обычно осуществляется лишь фильтрация по имени. Сложную фильтрацию на основе других свойств элементов можно выполнить с помощью Where-Object .

Следующая команда находит все исполняемые файлы в папке Program Files, которые были в последний раз изменены после 1 октября 2005 г. и размер которых не менее одного мегабайта и не более десяти мегабайт:

Копирование файлов и папок

Копирование выполняется с помощью командлета Copy-Item . Следующая команда создает резервную копию C:\boot.ini в C:\boot.bak:

Если целевой файл уже существует, то попытка копирования завершается неудачей. Чтобы перезаписать имеющийся целевой файл, используйте параметр Force.

Эта команда работает, даже если целевой объект доступен только для чтения.

Так же выполняется и копирование папок. Эта команда копирует папку C:\temp\test1 в новую папку C:\temp\DeleteMe рекурсивно.

Можно также скопировать избранные элементы. Следующая команда копирует все файлы TXT, содержащиеся в папке C:\data , в папку C:\temp\text :

Для копирования элементов файловой системы можно использовать и другие средства. В Windows PowerShell по-прежнему работают команды XCOPY, ROBOCOPY и такие COM-объекты, как Scripting.FileSystemObject. Например, можно воспользоваться COM-классом Scripting.FileSystem сервера сценариев Windows для создания резервной копии файла C:\boot.ini в файле C:\boot.bak :

Создание файлов и папок

Создание новых элементов осуществляется одинаковым образом всеми поставщиками Windows PowerShell. Если поставщик Windows PowerShell поддерживает более одного типа элементов (например, поставщик Windows PowerShell FileSystem различает каталоги и файлы), необходимо указать тип элемента.

Эта команда создает папку C:\temp\New Folder :

Эта команда создает пустой файл C:\temp\New Folder\file.txt .

При использовании параметра Force с командой New-Item для создания папки, которая уже существует, она не перезапишет и не заменит папку. Будет просто возвращен имеющийся объект папки. Однако, если использовать New-Item -Force в уже имеющимся файле, файл будет полностью перезаписан.

Удаление всех файлов и папок, содержащихся в папке

Удалить вложенные элементы можно с помощью командлета Remove-Item , однако он потребует подтверждения удаления, если элемент сам что-нибудь содержит. Например, при попытке удаления папки C:\temp\DeleteMe , которая содержит другие элементы, Windows PowerShell предварительно предложит подтвердить удаление этой папки:

Если подтверждение для каждого вложенного элемента нежелательно, задайте параметр Recurse:

Подключение локальной папки как диска

Отобразить локальную папку можно с помощью команды New-PSDrive . Следующая команда создает локальный диск P: , корневым каталогом которого является локальный каталог Program Files, отображающийся только в сеансе PowerShell:

Как и при использовании сетевых дисков, диски, отображенные в Windows PowerShell, немедленно становятся доступными оболочке Windows PowerShell. Чтобы создать подключенный диск, отображающийся в проводнике, нужен параметр -Persist . Но с этим параметром можно использовать только удаленные пути.

Чтение текстового файла в массив

Одним из наиболее общих форматов хранения текстовых данных является файл, отдельные строки которого рассматриваются как отдельные элементы. Командлет Get-Content используется для чтения всего файла за один шаг, как показано далее:

Командлет Get-Content сразу рассматривает данные, считанные из файла, как массив с одним элементом на строку содержимого файла. Убедиться в этом можно, проверив свойство Length полученного содержимого:

Эта команда наиболее полезна для непосредственного ввода в Windows PowerShell информационных списков. Например, можно хранить в файле C:\temp\domainMembers.txt список имен компьютеров или IP-адресов по одному имени на каждую строку файла. Вы можете использовать командлет Get-Content , чтобы извлечь содержимое файла и поместить его в переменную $Computers :

Теперь переменная $Computers представляет собой массив, содержащий в каждом элементе имя компьютера.

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

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

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

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

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

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

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

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

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

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

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

PowerShell

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

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

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

Get-Childitem

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

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

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

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

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

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

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

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

DirLister

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

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

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

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

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

Чтобы просмотреть или открыть файлы каталога или папки на вашем компьютере, выполните следующие действия для вашей операционной системы.

Показать файлы в папке Windows

Пользователи Microsoft Windows, которые хотят перечислить файлы на компьютере, могут открыть Мой компьютер или Проводник Windows и открыть диск C: . При попадании на диск C: все файлы и папки в корневом каталоге вашего основного жесткого диска отображаются в списке и должны напоминать пример, показанный ниже.

В Windows большинство ваших программ хранятся в папке Program Files, а ваши документы часто сохраняются в папке «Мои документы».

Файлы и папки в корневом каталоге

MS-DOS и командная строка Windows

MS-DOS и командная строка Windows

Чтобы вывести список файлов в командной строке MS-DOS или в командной строке Windows, используйте команду dir.

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

Пример вывода команды dir

По умолчанию команда dir выводит список файлов и каталогов для текущего каталога. В приведенном ниже примере мы находимся в каталоге Windows, поэтому отображаются только файлы и каталоги в каталоге Windows.

Если в одном каталоге слишком много файлов, вы также можете показывать файлы по одной странице за раз, используя команду dir с ключом / p.

Вы можете перечислить файлы, которые соответствуют только определенным критериям, используя подстановочные знаки в команде dir. Ниже приведены несколько дополнительных примеров команды dir с подстановочными знаками.

В приведенном выше примере отображаются только файлы с расширением .txt.

В приведенном выше примере отображаются только файлы, начинающиеся с буквы «а».

Смотрите наше определение подстановочного знака для получения дополнительной информации об этом термине и дополнительных примерах.

В приведенном выше примере эта команда выводит список файлов в каталоге C: \ Windows независимо от текущего каталога или диска.

Вывести список файлов в каталоге Windows PowerShell

Как и командная строка Windows, Windows PowerShell может использовать команду dir для вывода списка файлов в текущем каталоге. PowerShell также может использовать команды ls и gci для вывода списка файлов в другом формате.

Перечислите файлы в каталоге Linux и Unix

Вывод файлов в каталоге Linux и Unix

Чтобы вывести список файлов в командной строке Linux или Unix, используйте команду ls, как показано ниже. Если вам нужны дополнительные примеры и синтаксис команды ls, см. страницу справки команды ls.

Рекомендуется использовать ls -laxo для просмотра файлов, так как он дает вам полную информацию о файлах и информацию о разрешениях в более простом и готовом формате.

Вы можете перечислить файлы, которые соответствуют только определенным критериям, используя подстановочные знаки в команде ls. Ниже приведены несколько дополнительных примеров команды dir с подстановочными знаками.

В приведенном выше примере отображаются только файлы с расширением .txt.

В приведенном выше примере отображаются только файлы, начинающиеся с буквы «r».

В приведенном выше примере отображаются только файлы, начинающиеся с гласной (a, e, i, o, u).

Тильда это ярлык. Без ярлыка вам нужно будет ввести полное имя каталога. Например, если ваше имя пользователя было «надежда», ваш домашний каталог будет / home / hope. Вы можете увидеть полный рабочий каталог, в котором вы находитесь, с помощью команды pwd.

Показать файлы на Apple MacOS

Пользователи Apple могут просматривать файлы через Finder. Если вы находитесь в Терминале, посмотрите шаги Linux, которые также работают в Терминале.

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

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

Командная строка Windows дает возможность легко узнать, какие файлы находятся в той или иной папке на компьютере. Для этого достаточно знать полный адрес папки и прописать команду в командной строке.

Чтобы узнать полный адрес папки, список файлов в которой вы хотите определить, найдите эту папку в проводнике Windows, после этого зажмите на клавиатуре клавишу Shift, и на найденную папку нажмите правой кнопкой мыши. Появится контекстное меню, в котором нужно выбрать пункт “Скопировать как путь”.


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

Далее откройте командную строку. Введите команду cd c:\papka\, где c:\papka\ — это пусть к папке, из которой нужно получить список файлов. В шаге выше данный путь копировался. Соответственно, можно просто нажать Ctrl+V, чтобы его вставить, но после этого необходимо удалить кавычки, которые копируются вместе с путем. Нажмите Enter, чтобы выполнить команду.

Далее пропишите команду dir /a /-p /o:gen >files.txt и нажмите Enter.


После этого будет создан файл files.txt в папке, в которой вы определяете список файлов.


Файл files.txt не получится открыть обычным блокнотом, поскольку информация в нем сохраняется в кодировке Windows 866. Необходимо предварительно конвертировать файл, либо открывать его с помощью приложений, которые поддерживают такую кодировку, например, Notepad++.

Получить список файлов в папке через Powershell

Консоль Powershell, которая частично копирует, а частично заменяет функциональность командной строки, дает возможность получить список файлов в папке. При этом есть два способа, как это сделать:

    Запустите консоль Powershell любым удобным способом, например, через поиск. После этого введите в ней команду Get-Childitem -Path C:\papka, где C:\papka — это путь до папки, список файлов которой вам нужно получить. При исполнении данной команды, список файлов будет отображен прямо в Powershell.



В отличие от метода с командной строкой, созданный txt-файл утилитой Powershell будет открываться обычным блокнотом Windows без трудностей.

Получить список файлов в папке через Total Commander

Можно использовать и сторонние приложения, чтобы узнать список всех файлов в папке. Например, популярный файловый менеджер Total Commander позволяет это сделать.

Запустите Total Commander и найдите папку, список файлов из которой вы хотите получить. В верхнем меню нажмите “Выделить” и выберите пункт “Выделить все”.


Файлы в папке выделятся красным. Далее необходимо нажать “Копировать имена файлов в буфер”.


После этого вставьте в любой текстовый редактор скопированную в буфер обмена информацию, используя команду “Вставить” из контекстного меню или комбинацию клавиш Ctrl+V.

Читайте также: