Как получить список файлов через командную строку (cmd)
- – Автор: Игорь (Администратор)
Зачем может понадобиться список файлов из командной строки
Если вам когда-нибудь понадобиться получить список всех файлов, то вы обнаружите пренеприятнейшую новость. Интерфейс проводника Windows не позволяет вам это сделать в простой и понятной форме. И вроде бы задача до безумия проста, и вроде перед глазами все необходимые файлы, но… Однако, это можно очень просто сделать с помощью командной строки (cmd). Кроме того, командная строка позволит вам отфильтровать только необходимые файлы, например, только mp3. В данном случае мы будем использовать специальную команду «dir». Скорее всего, опытным пользователям это команда хорошо знакома, поэтому статья будет для них не интересной.
Примечание: вы так же можете использовать различные каталогизаторы и органайзеры, то они требуют установки дополнительных приложений.
Если вам кажется, что это никогда вам в жизни не пригодится, то вы ошибаетесь. Практически каждый пользователь каждый день в неявном виде использует списки файлов. Это и поиск необходимого документа среди всех ваших документов. Это музыка. Это фотографии. Это различный экспорт файлов в ваших приложениях. Банально, тот же плей лист. Просто вы никогда не сталкивались с такими простыми задачами, как «передать список файлов, например, в техподдержку», «коллективно выбрать необходимую вам музыку из всего списка» (причем обычно это делается на бумаге, да существует огромное количество «модных девайсов», но они никогда не заменят такие простые вещи, как бумагу и карандаш), «загрузить список в новое приложение» (далеко не во всех приложениях качественно реализован импорт), «использование для технических нужд тех же консольных приложений» (например, различная пакетная обработка файлов; конечно, рядовой пользователь никогда не будет этого делать, но.
Выводим список файлов папки и ее подпапках на экран командной строки
- Откройте командную строку в необходимой папке (см. предыдущую статью)
- Введите «dir» (без кавычек) и нажмите Enter. Вы получите список файлов (см. картинку)
- Если вам необходимо перечислить файлы во всех вложенных папках, то вместо «dir» используйте «dir /s» (вводить без кавычек)
Полученные списки могут быть довольно длинными, особенно если список создается для каких-нибудь объемных каталогов. Такие списки не поместятся на экране, и с ними будет не очень удобно работать. К счастью, вы очень легко можете сохранить весь полученный список в отдельный текстовый файл.
Создаем текстовый файл со списком файлов в командной строке
Для того чтобы выведенный список сохранить в текстовый файл, используется специальный символ перенаправления потока «>» (без кавычек).
- Откройте командную строку в необходимой папке.
- Введите «dir > listmyfolder.txt» (без кавычек) и нажмите Enter. Весь список сохранится в файле «listmyfolder.txt».
- Если вам необходимо так же сохранить файлы и из всех вложенных каталогов, то используйте команду «dir /s > listmyfolder.txt» (без кавычек)
Файл «listmyfolder.txt» будет создан в той же папке, в которой вы находитесь. Небольшой уточнение по поводу файла, вы можете называть его как вам будет угодно, задавать ему абсолютно любое расширение. Каких-то специальных ограничений нет, кроме тех, что требует система Windows к названиям файлов. Так же вы можете использовать полные пути, для сохранения списка в другом каталоге. Например, вы хотите сохранить файл на диске «F:» в каталоге «list». Для этого вам необходимо будет использовать такую команду «dir > F:\list\listmyfolder.txt» (без кавычек). Как видите ничего сложно нет.
Создаем текстовый файл со списком файлов определенного расширения в командной строке
Далеко не всегда вам необходимо получить все файлы в каталоге. Например, вы хотите получить только список фотографий или только музыки. Согласитесь, что вручную изменять полный список файлов — скучная и рутинная задача. Чтобы облегчить всем жизнь, командная строка поддерживает специальный символ *, с помощью которого можно составить так называемые регулярные выражения (порой их называют маской). Не стоит пугаться страшных слов, никаких сложных конструкций в варианте «/d+?[\.2345]?d+[\.]?mp3/$» вы не встретите. Далее мы приведем простые примеры, как вы можете получить списки всех ваших mp3 и jpg файлов, т.е. музыки и фотографий.
Получение всех mp3 файлов в папке и во всех вложенных папках из командной строки
Теперь команда выглядит следующим образом:
- dir /s *.mp3 > listmp3.txt
В файле «listmp3.txt» будет список всех ваших MP3-файлов.
Получение всех фотографий в формате JPEG в папке и во всех вложенных папках из командной строки
Теперь команда выглядит следующим образом:
- dir /s *. jpg > listjpg.txt
В файле «listjpg.txt» будет список всех ваших фотографий в формате JPEG.
Получение простого формата списка из командной строки
Вышеописанные команды сформируют списки, которые дополнительно будут включать информацию о файлах, а именно размер и дату создания. Но, такая информация далеко не всегда необходима. Порой нам нужен именно простой список файлов. Чтобы сформировать такой список, необходимо добавить в команду специальный параметр «/b». В итоге команда будет выглядеть следующим образом:
Если вам интересно, то есть много других полезных команд. Чтобы узнать полный список команд, вам необходимо ввести команду «help». Конечно, краткое описание команды вряд ли поможет вам представить, как можно использовать команду. Поэтому существует специальный параметр «/?». Если вы его введете сразу после команды, то в окне консоли появится небольшой мануал по использованию команды и ее параметров.
Предупреждение: Если вы не сильно разбираетесь в том, что именно делает команда, то настоятельно вам рекомендуем сперва прочитать о ее применении, хотя бы в поисковике. Неаккуратное и неправильное использование команд может привести к неприятным последствиям. Конечно, можно использовать образы диска перед тестами, но, согласитесь, что это сильно накладно.
☕ Хотите выразить благодарность автору? Поделитесь с друзьями!
- Как открыть командную строку Windows из любой папки
- Как открыть командную строку в Windows 7 / Vista от имени администратора?
Добавить комментарий / отзыв
5 способов получить список файлов в папке
У некоторых пользователей, при работе на компьютере, возникает необходимость получить список файлов в папке. Такой список может быть нужен для разных целей: для каталогизации файлов в папках, для сравнения содержимого в папках, для того, чтобы составить список фильмов, музыкальных композиций, электронных книг и т.
Во многих случаях, количество файлов может быть очень большим, поэтому вручную составить полный список находящихся в папке файлов будет проблематично. Предположим, в папке на вашем компьютере хранится электронная библиотека, или вы имеете большое собрание фильмов. Даже увлеченному человеку запомнить все содержимое папки или диска будет нереально.
Выходом из этой ситуации будет создание списка файлов, находящихся в данной папке, а потом сохранение этого списка в текстовый файл. В дальнейшем, полученный список можно будет отредактировать так, как это будет необходимо.
Например, у меня на внешних жестких дисках, каждый из которых имеет размер в несколько терабайт, хранится большая коллекция фильмов, которые я собирал несколько лет. Мне, конечно, тяжело запомнить все названия фильмов, которые хранятся на жестких дисках.
Встречая в интернете какой-либо фильм, имея у себя список файлов в папке, я могу легко проверить, есть ли такой фильм у меня в коллекции, или я встретил новый фильм. Поэтому я приступил к поиску решения данного вопроса.
В итоге, я нашел несколько простых вариантов решения этой проблемы. Создать список файлов в папке можно разными способами: при помощи командной строки, при помощи файла, который имеет расширение «.bat», при помощи специальных программ, сохранить список в браузере.
Сохранение списка файлов с помощью командной строки
Вначале вам необходимо будет перейти к нужной папке, или диску, если вы хотите получить список файлов, которые находятся на диске. После открытия папки или диска, удерживая на клавиатуре кнопку «Shift», кликните правой кнопкой мыши внутри этой папки. В открывшемся контекстном меню выберите пункт «Открыть окно команд».
После этого откроется окно консоли, в которой уже будет указан путь к нужной директории (в вашем случае, будет к той папке, которую вы откроете). В этом примере, это папка «Программы» на Рабочем столе моего компьютера. В этой папке находятся другие папки, в которых находятся ярлыки программ.
Далее нужно будет ввести одну из этих команд:
dir /b>filelist.txt dir /s>filelist.txt
После ввода «dir» должен быть пробел. Вместо «filelist» может написать свое название файла, только латинскими буквами. Не забудьте в конце добавить формат «.txt».
Эти команды отличаются друг от друга в использовании дополнительных критериев сохранения списка файлов:
- /b — обозначает, что будут сохранены только имена файлов.
- /s — обозначает, что дополнительно в список будут включены все файлы и подкаталоги (подпапки), которые находятся в этой папке.
Затем на клавиатуре нажмите на кнопку «Enter».
После этого вы можете открыть папку и увидеть, что в папке находится текстовый файл «filelist». Теперь можете открыть этот файл с помощью Блокнота.
Если в данной папке некоторые файлы имели русские имена, то вместо имен этих файлов, вы увидите непонятные символы (крякозябры). Дело в том, что программа Блокнот не понимает кодировку MS-DOS.
Поэтому, открыть созданный файл, можно будет с помощью программы Word. Предполагаю, что у большинства пользователей, на компьютере установлена данная программа.
Кликните по текстовому файлу правой кнопкой мыши, а затем в контекстном меню выберите пункт «Открыть с помощью». Выберите для открытия файла программу Microsoft Office Word. В окне программы Word будет открыто окно «Преобразование текста», в котором нужно будет выбрать кодировку MS-DOS, которая позволит прочитать этот документ.
На образце вы увидите правильное отображение текста.
После нажатия на кнопку «ОК», данный текст будет открыт в программе Word. Вы можете провести редактирование документа, а потом сохранить его на компьютере в нужном формате, в том числе в формате «TXT». Проблем с кодировкой после сохранения файла уже не будет.
Получение списка файлов в папке с помощью bat файла
Один из самых доступных и простых способов получения списка файлов в папке – использование для этого специального bat файла. Существует несколько вариантов создания файла с расширением «.bat», с разным кодом.
Для создания bat файла вам нужно будет открыть Блокнот, а затем вставить туда этот код:
chcp 1251 echo %date% %time% >filelist.txt dir /b /d >>filelist.txt
Сохраните этот файл, имя файлу можете дать любое, самому файлу нужно дать расширение «BAT». Параметры сохранения файла в Блокноте будут выглядеть примерно так:
- Имя файла: filelist.bat
- Тип файла: Все файлы
После этого нажмите на кнопку «Сохранить».
Далее помещаете созданный файл в ту папку, из которой вы хотите получить, список находящихся там файлов. После этого, запустите файл с расширением «.bat». В данной папке будет создан файл «filelist» в формате «.txt», в котором будет находиться список файлов.
Существует несколько вариантов содержимого файла с расширением «.bat». При использовании этого метода, проблем с кодировкой не возникнет.
Программа DirLister для получения списка файлов
Вы можете создать список файлов расположенных в папке, при помощи бесплатной программы DirLister. Эта крошечная программа не требует установки на компьютер. После загрузки программы на свой компьютер, распакуйте архив с программой.
dirlister скачать
Для запуска программы, откройте папку с программой, а потом кликните по приложению DirLister.
В окне программы DirLister, в разделе «Directory To Scan», при помощи кнопки «Open», вам нужно будет выбрать папку для сканирования.
В разделе «Output File», при помощи кнопки «Save As…», вам необходимо будет выбрать место для сохранения списка файлов.
Вы можете уточнить критерии поиска файлов по маске «*.*», выбрав нужное имя или тип файла («TXT», «Excel», «HTML» и т.д.). После выбора необходимых настроек, нажмите на кнопку «Make List».
После завершения сканирования в левом нижнем углу программы будет выведена информация об успешном завершении создания списка файлов: «All file processed correctly».
Программа DirLister выводит не только список файлов в данной папке, но и дает полную информацию о вложенных в эту папку файлах и папках, в том числе о размере файлов.
Получаем список файлов в Total Commander
Получить список файлов в папке можно при помощи популярного файлового менеджера Total Commander. Для этого, открываете в окне программы нужную папку.
В меню «Выделение», сначала выбираете пункт «Выделить всё». После того, как все файлы были выделены, в этом же меню выбираете пункт «Копировать имена в буфер».
Заключение
Потом открываете Блокнот или другой текстовый редактор, и вставляете туда список файлов из буфера обмена.
Вы можете в меню «Выделение» выбрать пункт «Сохранить выделение в файл…». В этом случае, вам нужно будет дать имя файлу, а затем сохранить его в формате «TXT».
Сохранение списка файлов в папке в браузере
Получить список файлов в папке можно при помощи браузера. Сначала откройте браузер, а затем перетащите папку в окно браузера. Список файлов будет открыт в окне браузера. Между содержимым можно будет перемещаться как в Проводнике.
Далее можете просто скопировать список файлов в текстовый редактор, сохранить список в HTML файл, или сохранить в PDF при помощи виртуального принтера.
Заключение
При помощи таких достаточно простых способов, вы можете легко создать список файлов, которые находятся в конкретной папке или на диске вашего компьютера. Вы можете использовать наиболее удобный для себя способ сохранения списка файлов.
Как получить список имен файлов в каталоге и сохранить его в переменной с помощью команд cmd
Мне нужно получить все имена файлов в каталоге и сохранить их в какой-то переменной из командной строки.
Я наткнулся на это
`dir /s /b > print.txt`
но это печатает имена файлов в txt-файл.
Как я могу хранить эти имена в переменной?
batch-fileПоделиться Источник user2907999 23 октября 2013 в 11:12
3 ответа
- Получение имен всех файлов в каталоге
Я могу легко получить список всех файлов (включая подкаталоги) в каталоге с помощью команды (directory-list) Но выход находится в следующем виде: ‘(#<path:afile> #<path:bfile. txt> #<path:thirdfile.doc>) Как я могу преобразовать это в простой список строк имен файлов следующим…
- Поиск имени файла по его количеству в каталоге с помощью cmd
У меня есть каталог с тысячами файлов, и мне нужно найти конкретные имена файлов по количеству файлов (файлы сортируются по имени или дате). Есть ли простой способ сделать это с помощью команд cmd? Спасибо.
22
Я предполагаю, что вы действительно имеете в виду Windows batch file, а не DOS.
Переменные пакетной среды ограничены 8191 символом, поэтому, скорее всего, не удастся уместить все пути к файлам в одну переменную, в зависимости от количества файлов и средней длины пути к файлам.
Имена файлов должны быть заключены в кавычки, если они содержат пробелы.
Предполагая, что они вписываются в одну переменную, вы можете использовать:
@echo off
setlocal disableDelayedExpansion
set "files="
for /r %%F in (*) do call set files=%%files%% "%%F"
Оператор CALL работает довольно медленно. «‘) do ( set «file.%%A=%%B» set «file.count=%%A» ) :: Access the values setlocal enableDelayedExpansion for /l %%N in (1 1 %file.count%) do echo !file.%%N!
Поделиться dbenham 23 октября 2013 в 12:43
5
Как сказал @Matt, используйте batch file.
setlocal enabledelayedexpansion
set params=
for /f "delims=" %%a in ('dir /s/b') do set params=!params! %%a
Поделиться Cookie Butter 23 октября 2013 в 12:33
Поделиться npocmaka 23 октября 2013 в 12:31
- CMD.exe как создать список файлов INI с помощью CMD
как создать INI файл списка файлов с cmd? напр.. Это создаст список печати всех txt-файлов… dir /b *.txt > FileList.log Readme. txt Info.txt Data.txt но как создать INI filelist всех файлов *.txt в каталоге с cmd? [Uninstall] file1=Readme.txt file2=Info.txt file3=Data.txt
- Функция php вытягивает список имен файлов в каталоге в массив php
Как извлечь список имен файлов из каталога и сохранить их в массиве в php? Как получить значение из документа xml? Как мне извлечь пути/имена файлов в каталоге и сохранить их в массиве? AKA: $proj_dir = ~/directory/path/to/project_files;; // same as output from {query} $data_dir =…
Похожие вопросы:
Как я могу получить список всех имен каталогов и / или всех файлов в определенном каталоге в MATLAB?
Есть две вещи, которые я хочу сделать: Получите список всех имен каталогов в каталоге и Получить список всех имен файлов в каталоге Как я могу сделать это в MATLAB? Прямо сейчас я пытаюсь: dirnames…
Как получить список имен всех файлов, присутствующих в каталоге Node. js?
Я пытаюсь получить список имен всех файлов, присутствующих в каталоге, используя Node.js. Мне нужен вывод, который представляет собой массив имен файлов. Как я могу это сделать?
Как получить NSArray имен файлов всех файлов в данном каталоге в моем приложении?
То, что я хочу сделать, кажется достаточно простым: получить массив имен файлов в заданном directory в моем приложении. Но чем больше я играю с NSFileManager и NSBundle, тем больше я получаю…
Получение имен всех файлов в каталоге
Я могу легко получить список всех файлов (включая подкаталоги) в каталоге с помощью команды (directory-list) Но выход находится в следующем виде: ‘(#<path:afile> #<path:bfile.txt>…
Поиск имени файла по его количеству в каталоге с помощью cmd
У меня есть каталог с тысячами файлов, и мне нужно найти конкретные имена файлов по количеству файлов (файлы сортируются по имени или дате). Есть ли простой способ сделать это с помощью команд cmd?. ..
CMD.exe как создать список файлов INI с помощью CMD
как создать INI файл списка файлов с cmd? напр.. Это создаст список печати всех txt-файлов… dir /b *.txt > FileList.log Readme.txt Info.txt Data.txt но как создать INI filelist всех файлов…
Функция php вытягивает список имен файлов в каталоге в массив php
Как извлечь список имен файлов из каталога и сохранить их в массиве в php? Как получить значение из документа xml? Как мне извлечь пути/имена файлов в каталоге и сохранить их в массиве? AKA:…
Как получить список файлов в определенном каталоге, игнорируя символические ссылки с помощью python?
Мне нужно обработать имена файлов из каталога, создав список имен файлов. Но мой результирующий список также содержит записи для символических ссылок. Как я могу получить чистые имена файлов в…
Firefox Addon SDK — как получить список файлов в каталоге и получить файл
Я использую SDK для создания аддона Firefox. В настройках аддона пользователь может указать каталог изображений для моего аддона (они будут добавлены на веб-страницу). Я не могу понять, как получить…
Переименуйте список файлов в Windows CMD
Я хочу добавить суффикс (или префикс) к каждому из имен файлов в определенном списке. Что-то вроде приведенного ниже будет работать, но я не хочу захватывать все файлы .tsv в каталоге, только те,…
Как сделать простой поиск файлов в cmd
Я хочу быстро найти файл по его имени или части его имени из командной строки windows (а не power shell). Это похоже на открытие explorer и использование окна поиска вверху.
Примечание: dir
может выполнять поиск на основе шаблона строки, но он не будет выполнять поиск в подкаталогах.
Примечание 2: findstr
может использоваться для поиска токена внутри файлов и имеет флаг рекурсивности; забавно, что более сложная находка может быть легко обнаружена . ..
Поделиться Источник Bogdan Gavril MSFT 09 ноября 2011 в 14:46
5 ответов
- CMD.exe как создать список файлов INI с помощью CMD
как создать INI файл списка файлов с cmd? напр.. Это создаст список печати всех txt-файлов… dir /b *.txt > FileList.log Readme.txt Info.txt Data.txt но как создать INI filelist всех файлов *.txt в каталоге с cmd? [Uninstall] file1=Readme.txt file2=Info.txt file3=Data.txt
- Windows CMD поиск
Описание: Начиная с моего предыдущего поста об использовании файла .bat для поиска имен файлов ( найти несколько файлов из командной строки ), я понял, как запустить файл .bat для поиска определенных имен файлов на сервере . Теперь я хочу сделать то же самое, но я хочу включить в свой поиск все…
178
dir /s *foo*
поиск в текущей папке и подпапках.
Он находит каталоги, а также файлы.
где /s означает (документация) :
/s перечисляет каждое вхождение указанного имени файла в указанный каталог и все подкаталоги.
Поделиться Gilles Arcas 09 ноября 2011 в 15:29
129
dir /b/s *.txt
поиск всех txt-файлов в дереве каталогов. Перед его использованием просто измените каталог на root с помощью
cd/
вы также можете экспортировать список в текстовый файл с помощью
dir /b/s *.exe >> filelist.txt
и поиск внутри использования
type filelist.txt | find /n "filename"
EDIT 1: хотя эта команда dir работает со старых дней dos, но Win7 добавила что — то новое под названием Where
where /r c:\Windows *. exe *.dll
будет искать exe & dll в диске c:\Windows , как предложил @SPottuit вы также можете скопировать вывод в буфер обмена с помощью
where /r c:\Windows *.exe |clip
просто дождитесь возвращения приглашения и до тех пор ничего не копируйте.
EDIT 2: Если вы ищете рекурсивно и вывод Большой, вы всегда можете использовать more
для включения подкачки страниц, он покажет -- More --
внизу и прокрутит до следующей страницы, как только вы нажмете SPACE
или переместите строку за строкой при нажатии ENTER
where /r c:\Windows *.exe |more
Для получения дополнительной помощи попробуйте
where/?
Поделиться Vinod Srivastav 08 сентября 2014 в 04:33
2
dir *. txt /s /p
даст более подробную информацию.
Поделиться Mullai Nathan 26 апреля 2018 в 05:00
- Поиск файлов, содержащих строку рекурсивно в solaris
Поиск команды solaris для получения списка всех файлов, содержащих шаблон поиска (рекурсивно). Я знаю, как это сделать для linux, но та же команда не работает в solaris: bash-3.2# uname -a SunOS D1NCIC-CL01 5.10 Generic_148888-03 sun4u sparc SUNW,Sun-Fire-15000 bash-3.2# find . -type f -print0 |…
- Поиск файлов по тексту в папке Maven зависимостей в Eclipse
У меня есть проект Java Maven в Eclipse, поэтому все файлы Maven jar перечислены в пакете Maven Dependencies (папка?) в проекте Explorer. Я хотел бы сделать простой текстовый поиск внутри файлов *.class внутри банок так же, как я делаю файл, содержащий текстовый поиск. Я не могу использовать…
0
Проблема с DIR заключается в том, что он будет возвращать неправильные ответы. Если вы ищете DOC в папке с помощью DIR *.DOC
, он также даст вам DOCX . Поиск *.HTM
также даст HTML и так далее…
Поделиться Hobbe Lundahl 10 февраля 2019 в 07:01
0
Вы можете искать в windows по DOS и explorer GUI.
DOS:
1) DIR
2) ICACLS (поиск файлов и папок, чтобы установить на них ACL)
3) cacls …………………………………………..
2) пример
icacls c:*ntoskrnl*.* /grant system: (f) /c /t ,затем используйте PMON из sysinternals для отслеживания того, к каким папкам запрещен доступ. Результат содержит
путь доступа содержит ваш диск
имя процесса является explorer.exe
это были фильтры, которые вы должны применить
Поделиться Ali 27 апреля 2019 в 22:01
Похожие вопросы:
Простой поиск в MySql
Я пытаюсь создать базовую функцию поиска для MySQL InnoDB. Я знаю, что есть полнотекстовый поиск, но сейчас я просто хочу сделать простое и простое решение. Я хочу, чтобы при поиске пользователя,…
Поиск имени файла по его количеству в каталоге с помощью cmd
У меня есть каталог с тысячами файлов, и мне нужно найти конкретные имена файлов по количеству файлов (файлы сортируются по имени или дате). Есть ли простой способ сделать это с помощью команд cmd?…
Переименование нескольких файлов в cmd
Если у меня есть несколько файлов в каталоге и я хочу добавить что-то к их именам файлов, но не к расширению, как бы я это сделал? Я попробовал следующее, с тестовыми файлами file1.txt и file2.txt :…
CMD.exe как создать список файлов INI с помощью CMD
как создать INI файл списка файлов с cmd? напр.. Это создаст список печати всех txt-файлов… dir /b *.txt > FileList.log Readme.txt Info.txt Data.txt но как создать INI filelist всех файлов…
Windows CMD поиск
Описание: Начиная с моего предыдущего поста об использовании файла . bat для поиска имен файлов ( найти несколько файлов из командной строки ), я понял, как запустить файл .bat для поиска…
Поиск файлов, содержащих строку рекурсивно в solaris
Поиск команды solaris для получения списка всех файлов, содержащих шаблон поиска (рекурсивно). Я знаю, как это сделать для linux, но та же команда не работает в solaris: bash-3.2# uname -a SunOS…
Поиск файлов по тексту в папке Maven зависимостей в Eclipse
У меня есть проект Java Maven в Eclipse, поэтому все файлы Maven jar перечислены в пакете Maven Dependencies (папка?) в проекте Explorer. Я хотел бы сделать простой текстовый поиск внутри файлов…
Загрузка файла последовательности в соответствии cmd
Не могли бы вы помочь мне с очень простой вещью? Мне нужно загрузить последовательность файлов и выполнить файл .exe, чтобы отобразить эти файлы через строку cmd. Я знаю, как все это сделать. Чего я…
Как установить несколько файлов whl в cmd
Я знаю, как установить файлы *. whl через cmd (код просто python -m pip install *so-and-so-.whl )., но так как я случайно удалил свой OS и не имел резервных копий, я оказался в затруднительном…
Как сделать решение explorer поиск только по именам файлов
Когда я нажимаю Ctrl+; и набираю, VS выполняет поиск как в именах файлов, так и в символах C++ (например, имена функций, имена классов). Это было бы OK, за исключением того, что он намного…
Список файлов рекурсивно показывает только полный путь и размер файла из командной строки Windows
Альтернатива № 1: FOR / R является более интуитивным, чем № 2 для меня.
Альтернатива № 2: FOR / F исправляет проблему с «пробелами в именах» в предложении Брайана Адкинса.
Альтернатива № 3: FORFILES будет моим выбором, за исключением того, что путь в двойных кавычках.
У Брайана или других гуру может быть более изящное решение, или он может предложить дюжину других решений, но эти три работают. Я попытался использовать FOR TOKENS, но затем мне пришлось убрать верхние и нижние колонтитулы, поэтому я вернулся к # 1. Я также подумал о создании небольшого файла .bat и его вызове, но это добавляет еще один файл (хотя он обеспечивает большую гибкость, как и функция).
Я проверил все альтернативы с каталогом и именами файлов со встроенными пробелами, 200+ символьными именами файлов, именами файлов без расширений и на корне небольшого диска (только на время; немного медленный — как предложил Брайан — но потом выполняет поиск в проводнике Windows, поэтому я установил приложение «Все для поиска»).
Альтернатива № 1: FOR / R
Лучший(?) Пытаясь выяснить, почему решение Брайана не работает для меня, я посмотрел на HELP FOR и решил попробовать подход / R. (Создание файла будет таким же, как в Альтернативе № 2.)
@echo off & for /R "c:\deletelater\folder with spaces" %A in (*.*) do echo %~fA %~zA
Пример — Работы (другой каталог, чем выше, для демонстрации рекурсии)
@echo off & for /R "c:\deletelater" %A in (*. *) do echo %~fA %~zA
c:\DeleteLater\Name with Spaces.txt 19800676
c:\DeleteLater\NoSpacesLongName.txt 21745440
c:\DeleteLater\Folder with Spaces\2nd Name with Spaces.txt 5805492
c:\DeleteLater\Folder with Spaces\2ndNoSpacesLongName.txt 3870322
c:\DeleteLater\FolderNoSpaces\3rd Name with Spaces.txt 27874695
c:\DeleteLater\FolderNoSpaces\3rdNoSpacesLongName.txt 28726032
Альтернатива № 2: FOR / F
Брайан Адкинс предложил: @echo off & for /f %a in ('dir /s /b') do echo %~fa %~za
исправленный ответ является:
@echo off & for /f "delims=*" %A in ('dir /s /b') do echo %~fA %~zA
более полный ответ с подавленными каталогами и выводом (добавлением) в файл:
@echo Results on %DATE% for %CD% >> YourDirFile.txt & echo off & for /f "delims=*" %A in ('dir /s /b /a:-d') do echo %~fA %~zA >> YourDirFile.txt
Примечание: «delims = *» указывает символ, не разрешенный в именах файлов.
Примечание: 2-я команда также подавляет каталоги с помощью / a: -d.
Примечание: Сделал заглавную букву имени переменной FOR, чтобы прояснить различие между переменной и параметрами переменной, если кто-то выбирает разные имена переменных.
Примечание: добавляется в файл только для ухмылок, так как ОП запрашивает вывод в файл.
Я полагаю, что мне действительно нужно проверить состояние ECHO и сбросить его.
Проблема — пробелы в именах
Предлагаемое Брайаном решение не обрабатывает имена файлов и папок, содержащие пробелы (по крайней мере, в моей конфигурации Vista).
Пример — Неверно (Без разделителей; Включает подавление каталога для OP, но с размером до и после имени файла для выделения)
Сокращенное имя и размер (неверно 4 из 6 файлов):
@echo off & for /f %A in ('dir /s /b /a:-d') do echo %~zA %~fA %~zA
C:\DeleteLater\Name
21745440 C:\DeleteLater\NoSpacesLongName.txt 21745440
C:\DeleteLater\Folder
C:\DeleteLater\Folder
C:\DeleteLater\FolderNoSpaces\3rd
28726032 C:\DeleteLater\FolderNoSpaces\3rdNoSpacesLongName. txt 28726032
Пример — правильный (Обратите внимание на вывод на экран, не добавляется в файл)
@echo off & for /f "delims=*" %A in ('dir /s /b /a:-d') do echo %~fA %~zA
C:\DeleteLater\Name with Spaces.txt 19800676
C:\DeleteLater\NoSpacesLongName.txt 21745440
C:\DeleteLater\Folder with Spaces\2nd Name with Spaces.txt 5805492
C:\DeleteLater\Folder with Spaces\2ndNoSpacesLongName.txt 3870322
C:\DeleteLater\FolderNoSpaces\3rd Name with Spaces.txt 27874695
C:\DeleteLater\FolderNoSpaces\3rdNoSpacesLongName.txt 28726032
Альтернатива № 3: ФАЙЛЫ (Цитата выпуск)
Это решение прямо из последних двух примеров в документации FORFILES ( forfiles /?
).
FORFILES /S /M *.doc /C "cmd /c echo @fsize"
FORFILES /M *.txt /C "cmd /c if @isdir==FALSE notepad.exe @file"
Объединение этих примеров и запись в файл дает ответ (почти):
forfiles /s /c "cmd /c if @isdir==FALSE echo @path @fsize" >>ForfilesOut. txt
Обратите внимание, что путь указан в кавычках в выходных данных.
Неважно, echo on
или же echo off
переключается
Добавление пустой строки, разделяющей каждый каталог, было бы тривиальным расширением IF.
предосторожность : Использование маски /m *.*
не будет возвращать файлы без расширения (как последний файл в примере)!
В сторону : Это записывает файл в каждом каталоге с содержимым только этого каталога: forfiles /s /c "cmd /c if @isdir==FALSE echo @path @fsize >>ForfilesSubOut.txt"
Не то, что хотел ОП, но иногда удобно.
Пример — Работы (но с полным путем в кавычках)
forfiles /s /c "cmd /c if @isdir==FALSE echo @path @fsize"
"c:\DeleteLater\Name with Spaces.txt" 19800676
"c:\DeleteLater\NoSpacesLongName.txt" 21745440
"c:\DeleteLater\Folder with Spaces\2nd Name with Spaces.txt" 5805492
"c:\DeleteLater\Folder with Spaces\2ndNoSpacesLongName. txt" 3870322
"c:\DeleteLater\FolderNoSpaces\3rd Name with Spaces.txt" 27874695
"c:\DeleteLater\FolderNoSpaces\3rdNoSpacesLongName.txt" 28726032
"c:\DeleteLater\MoreFiles\A really really long file name that goes on and on 123456789 asdfghjkl zxcvnm qwertyuiop and still A really really long file name that goes on and on 123456789 qwertyuiop and still further roughly 225 characters by now.txt" 447
"c:\DeleteLater\MoreFiles\New Text Document no extension" 0
Этот пример включает в себя дополнительный каталог с очень длинным именем файла и именем файла без расширения.
Проблема: путь в кавычках
Итак, есть ли простой способ удалить нежелательные (?) Кавычки в примере с OP и сохранить Альтернативу № 3: ФАЙЛЫ. (Риторический вопрос: цитаты — это особенность или недостаток?)
BAT, Как копировать файлы с папками по полным путям? — Хабр Q&A
Первое: скопировать папку со всеми файлами и папками «C:\Data» в папку «C:\papka1»Второе: есть список файлов и папок с путями которые расположены в «C:\DATA»:
C:\Data\3d\Maps\28_rock_rc\SpeedTree\palms\images\palm_trunk. dx11.dds.dvpl
C:\Data\3d\Maps\28_rock_rc\stones\images\karelia_tiletex_blue.dx11.dds.dvpl
C:\Data\3d\Maps\28_rock_rc\stones\images\karelia_tiletex_blue.tex.dvpl
C:\Data\3d\Maps\29_skit_sk\work
C:\Data\3d\Maps\29_skit_sk\work\images
C:\Data\3d\Maps\29_skit_sk\work\images\yamato_01.dx11.dds.dvpl
C:\Data\3d\Maps\29_skit_sk\work\images\yamato_01.tex.dvpl
C:\Data\3d\Maps\29_skit_sk\work\images\yamato_02.dx11.dds.dvpl
C:\Data\3d\Maps\29_skit_sk\work\images\yamato_02.tex.dvpl
C:\Data\3d\Maps\34_forgecity_fc\buildings\images\bld_metlife.dx11.dds.dvpl
C:\Data\3d\Maps\34_forgecity_fc\buildings\images\bld_tower_plant.dx11.dds.dvpl
C:\Data\3d\Maps\34_forgecity_fc\buildings\images\build_1.dx11.dds.html
C:\Data\3d\Maps\34_forgecity_fc\buildings\images\build_2.dx11.dds.txt
C:\Data\3d\Maps\34_forgecity_fc\buildings\images\build_3.dx11.dds.gif
C:\Data\3d\Maps\34_forgecity_fc\buildings\images\build_4.dx11.dds.dvpl
C:\Data\3d\Maps\34_forgecity_fc\buildings\images\chrysler_building. dx11.dds.dvpl
C:\Data\3d\Maps\34_forgecity_fc\landscape\grass\forgecity_GrassMap.dx11.dds.dvpl
C:\Data\3d\Maps\hangar_prem_2018_birthday_6
C:\Data\3d\Maps\hangar_prem_2018_birthday_6\birthday_5
Эти файлы вмесите с папками (тоисть не терять структур папок (пусть они и указаны в списке)), их нужно скопировать по пути «C:\papka2»
Этот список можно использовать, как и в сам батник, или как отсылку на .txt файл.
+ В списке около 5000 строк файлов и папок и по этому, желательно получить в командной строке что например (19 из 19 строчек скопировано), если не все строчки, показать какие.
P.S. Раньше проводил копирование файлов батником который находит новые файлы не старше 24 часов, и оставлял новые файлы в папке «orig»:
@echo off
set src=C:\orig
set dst=C:\bk
robocopy «%src%» «%dst%» /minage:1 /copyall /move /e
pause
Но не всегда все файлы копировались.
Сейчас же появились пути к файлам и я хочу копировать по каждому файлу, для лучшего отслеживания файлов.
Советы чайника: Создать список содержимого папки
Хранящиеся на компьютере папки с различными файлами в виде изображений, музыкальных композиций, документов программ и так далее каталогизируются пользователем разными способами. Как с помощью специальных программ, так и вручную. Но иногда требуется получить список с перечнем файлов хранящихся в определенной папке в виде текстового документа. Это может пригодиться, например, для сравнения содержимого папок находящихся на разных компьютерах. Или для составления списка музыкальных треков, фильмов, роликов и других файлов, наглядно представленных в текстовом файле с возможностью добавить комментарий к каждому пункту. Проще говоря, пользователь сам решит, как воспользоваться приемом создания списка содержимого папки. Главное что не надо это делать вручную, за него это сделает система. Для осуществления задуманного пользователю требуется ввести несколько строчек в командную строку и список содержимого папки будет создан.Нажмите кнопку Пуск и в поле «Найти программы и файлы» введите команду – cmd и нажмите «Enter» Откроется окно командной строки, куда следует вписать следующую команду вида: dir диск:\путь>c:>lst.txt. После нажатия на клавишу «Enter» на диске С появится файл lst.txt с содержимым каталога, который был вами указан. Можно выбирать любое имя файла и место его расположения. Для простоты можно просто скопировать в проводнике путь к файлу и вставить его с помощью контекстного меню вызываемого правой клавишей, после dir. Если в названии выбранных папок пути есть пробелы, допустим, название папки состоит из двух слов, то его нужно заключить в двойные скобки. Как пример, что бы создать список для папки F:\Папки Данных\data\Program Files, в командной строке нужно создать – dir «F:\Папки Данных\data\Program Files»>c:>lst.txt.
Нажмите на картинку для увеличения |
Нажмите на картинку для увеличения |
Нажмите на картинку для увеличения |
Работа с файлами и папками »OnMSFT.com
Устали использовать Проводник для навигации по файлам? Хорошо, возможно, это не вы, если только вы не разработчик или ИТ-специалист. Разработчик или нет, но базовые знания командной строки всегда пригодятся. В этом руководстве мы представим некоторые общие команды для работы с файлами, которые вы можете использовать при работе в терминале.
Для обхода вашей файловой системы из командной строки (или из PowerShell, или из Windows Terminal) требуются две основные команды: cd
и dir
.Первый ( c hange d irectory) позволяет вам перемещаться по папкам в окне командной строки.
Например, если вы находитесь в папке с подкаталогами «Папка 1» и «Папка 2», введите cd «Папка 2»
, чтобы перейти в подкаталог папки 2. Используйте cd ..
, чтобы перейти на уровень выше. Путь в начале строки ввода командной строки всегда указывает ваш текущий каталог.
Находясь в каталоге, используйте команду dir
для просмотра файлов и папок в нем.Введите dir
, чтобы получить список всего в вашем текущем каталоге (отображается в начале командной строки). В качестве альтернативы используйте dir «Имя папки»
, чтобы перечислить содержимое именованного подкаталога.
Мы нашли нужную папку и просмотрели файлы в ней. Теперь мы хотим просмотреть содержимое файла. Используйте команду type
для проверки содержимого текстовых файлов. Например, типа my-article.txt
отобразит содержимое файла прямо в окне командной строки.
Чтобы обновить содержимое файла, используйте команду echo
для замены его содержимого. Запуск echo «мой новый текст»> my-article.txt
приведет к созданию файла my-article. txt
, содержащего «мой новый текст». Вы можете проверить это с помощью команды type
!
Если вы предпочитаете добавлять содержимое в конец файла, а не перезаписывать его, используйте в приведенной выше команде >>
вместо >
.Этот оператор добавляет содержимое в конец файла, сохраняя то, что уже есть.
Эти команды просты, но эффективны в сочетании. Здесь мы рассмотрели только самые основы, которые позволяют просматривать файлы и папки на вашем компьютере. Несколько других полезных команд включают mkdir
(создать новый каталог), copy
(копировать файлы) и move
(перемещать файлы).
Чтобы получить дополнительную информацию об этих командах, мы рекомендуем вам обратиться к другой команде: help
. Введите help
, а затем имя команды (например, help mkdir
), чтобы получить подробную справочную информацию в окне командной строки. Теперь вы должны быть готовы исследовать свой компьютер с помощью командной строки и продолжать учиться по мере того, как вы это делаете! Попробуйте запустить справку
по командам, обсуждаемым в этой статье, чтобы узнать о дополнительных функциях, которые они поддерживают.
Поделиться этим постом:
Как мне распечатать список файлов в каталоге?
Обновлено: 02.06.2020 компанией Computer Hope
Существуют различные методы печати списка файлов. На этой странице мы расскажем, как отправить вывод в файл, который можно распечатать, вместо вывода непосредственно на принтер.
Командная строка Windows и MS-DOS
Microsoft Windows не имеет простого метода печати вывода каталога в файл или на принтер. Следующее лучшее решение — вывод в файл и печать этого файла.
- Откройте командную строку Windows.
- Перейдите в каталог, содержащий содержимое, список которого вы хотите распечатать. Если вы новичок в командной строке, ознакомьтесь с командами cd и dir.
- Оказавшись в каталоге, содержимое которого вы хотите распечатать, введите одну из следующих команд.
каталог> print.txt
Приведенная выше команда берет весь вывод команды dir и записывает его в распечатку .txt в текущем каталоге.
каталог / b> print.txt
Приведенная выше команда печатает только имена файлов в файле print.txt , но не информацию о файлах в текущем каталоге.
каталог / s / b> print.txt
Приведенная выше команда печатает только имена всех файлов в текущем каталоге и любых подкаталогах файла print.txt .
- После выполнения любой из приведенных выше команд файл print.txt создается. Откройте этот файл в любом текстовом редакторе (например, в Блокноте) и распечатайте файл. Вы также можете открыть Блокнот из командной строки, набрав notepad print.txt .
Если у вас есть другой текстовый редактор по умолчанию, вы также можете использовать команду start, чтобы открыть файл в текстовом редакторе по умолчанию. Например, введите start print.txt, чтобы открыть файл в текстовом редакторе по умолчанию.
Linux
- Перейдите в каталог, который хотите распечатать. Если вы новичок в Linux, вам необходимо ознакомиться с командами Linux cd и ls.
- Оказавшись в каталоге, содержимое которого вы хотите распечатать, введите следующую команду.
LS> print.txt
Приведенная выше команда выводит имена всех файлов в текущем каталоге и любых подкаталогах в файл print.txt.
DIR — список файлов и папок — Windows CMD
DIR — список файлов и папок — Windows CMD — SS64.comПоказать список файлов и подпапок.
Синтаксис DIR [ путь (имена) ] [ display_format ] [ file_attributes ] [ sorted ] [ time ] [ options ]
Ключ [ путь ] Диск, папка и / или файлы для отображения,
это может включать подстановочные знаки:
* Соответствовать любым символам
? Соответствует любому ОДНОМУ символу[ display_format ] / P Пауза после каждого экрана данных. / W Формат широкого списка, отсортированный по горизонтали. / D Формат широкого списка, отсортированный по вертикальному столбцу.
[ файл_ a атрибуты ] / A [:] атрибут/ A: D Папка / A: -D НЕ Папка / A: R Только для чтения / A: -R НЕ только для чтения / A: Скрытый / A: -H НЕ скрытый / A: Архив / A: - НЕ архив / A: S Системный файл / A: -S НЕ Системный файл / A: I Файлы не проиндексированы по содержанию / A: -I НЕ проиндексированы по содержанию / A: L Reparse Point / A: -L NOT Reparse Point (символическая ссылка) / A: X Нет файла очистки / A: -X Файл очистки (Windows 8+) / A: V Целостность / A: -V НЕ Целостность (Windows 8+) / A Показать все файлы
Можно комбинировать несколько атрибутов e.г. / A: HD-R[s o rted] Сортировано по / O [:] sortorder
/ O: N Имя / O: -N Имя
/ O: Размер файла S / O: -S Размер файла / O: Расширение файла E / O: -E расширение файла
/ O: D Дата и время / O: -D Дата и время / O: G Группировать папки в первую очередь / O: -G Группировать папки в последнюю несколько атрибутов могут быть объединены, например / O: GEN[ t ime ] / T: поле времени для отображения и использования для сортировки
/ T: C Создание / T: Последний доступ / T: W Последняя запись (по умолчанию)[ параметры ] / S включает все подпапки. / R Отображение альтернативных потоков данных. / B Чистый формат (без заголовка, размеров файлов или резюме). / L использовать строчные буквы. / Q Показать владельца файла. / N формат длинного списка, в котором имена файлов находятся в крайнем правом углу. / X То же, что и / N, но с короткими именами файлов.
/ C Включить разделитель тысяч в размеры файлов.
/ -C Не включать разделитель тысяч в размеры файлов. / 4 Отображение года из четырех цифр. В самых последних сборках Windows этот переключатель не действует.Количество отображаемых цифр определяется форматом ShortDate. установить в Панели управления.
Вышеупомянутые переключатели можно предварительно установить, добавив их в переменную среды с именем
DIRCMD.
Например: SET DIRCMD = / O: N / S
Отмените любые предустановленные переключатели DIRCMD, добавив к переключателю префикс —
.
Например:
DIR *. * / -S
Сортировка
Порядок сортировки по умолчанию, если вы ничего не укажете с помощью / O, на диске NTFS будет в алфавитном порядке или на флэш-накопителе FAT USB, тогда порядок будет основан на порядке, в котором файлы были созданы и удалены, а также длины их имен.
Имена файлов в верхнем и нижнем регистре:
Имена файлов длиннее 8 символов — всегда будет отображать введенное имя файла в смешанном регистре.
Имена файлов короче 8 символов — может отображать имя файла в верхнем или нижнем регистре — это может отличаться от одного клиент на другой (параметр реестра)Чтобы получить чистый формат DIR (без информации о заголовке или нижнем колонтитуле), но с сохранением всех деталей, направьте вывод DIR в FIND, это предполагает, что ваш разделитель даты /
DIR c: \ temp \ *.* | НАЙТИ "/"
Вывод полного пути
Команда DIR / b вернет только список имен файлов при отображении вложенные папки с DIR / b / s, команда вернет полный путь.
Если вы хотите указать полный путь без , включая вложенные папки, используйте команду FOR, как в этом примере сценария.
Уровни ошибок
Если файл (ы) были успешно внесены в список% ERRORLEVEL% = 0
Если файл не найден или заданы неверные параметры% ERRORLEVEL% = 1
Все размеры файлов указаны в байтах.
DIR — внутренняя команда.
Примеры
Список содержимого c: \ demo, включая ВСЕ файлы:
DIR / a c: \ demo \
Перечислить содержимое c: \ demo, отображая только имена файлов:
DIR / b c: \ demo \
Перечислить только файлы (не папки), хранящиеся в c: \ demo \ recursing, во все подпапки и включить любые скрытые файлы:
DIR / a: -D / s c: \ demo \
Список содержимого c: \ demo и H: \ work
обратите внимание на обратную косую черту в конце, если какой-либо каталог не существует, это приведет к ошибке и установит% Errorlevel% = 1
DIR c: \ demo \ h: \ work \
Список всех точек повторной обработки (символические ссылки) в профиле текущего пользователя:
DIR% USERPROFILE% / a: i
Перечислить содержимое c: \ demo с полным путем к каждому файлу (источнику)
для %% A in («c: \ demo \ *») do echo %% ~ f A
Перечислить содержимое c: \ demo без деталей верхнего / нижнего колонтитула:
FOR / f «tokens = *» %% G IN (‘DIR c: \ demo \ *. | найти «/» ‘) DO echo %% G
«Вот оно, спрятано в алфавитном порядке» ~ Рита Холт
Связанные
длинных и коротких (8.3) имен файлов — DIR будет соответствовать любому из них.
ГДЕ — поиск и отображение файлов в дереве каталогов.
XCOPY / L — Список файлов без копирования.
ROBOCOPY / L — Список файлов с определенными свойствами.
DIRUSE — Показать размер нескольких подпапок. (Ресурсный комплект)
Вы также можете получить размеры файлов и дату / время из параметров пакета
Эквивалентная команда bash (Linux): ls — Вывести информацию о файле (ах)
Эквивалент Powershell: Get-ChildItem — получить содержимое папки или раздела реестра.
Авторские права © 1999-2021 SS64.com
Некоторые права защищены.
окон — Как скопировать список имен файлов в текстовый файл?
Это очень и очень просто в интерпретаторе командной строки Windows (все ОС Windows):
- Откройте командную строку (Пуск -> Выполнить ->
cmd
Введите ) - Перейдите (
cd
) в каталог, файлы которого вы хотите перечислить. - Введите
dir> output_file_name
(e.g.,dir> C: \ dir.txt
) и нажмите Введите .
Откройте только что созданный текстовый файл ( C: \ dir.txt
), и вы получите полный вывод команды dir
в этом каталоге.
Символ «больше» (>
) означает перенаправление вывода; он отправляет вывод большинства команд в указанный вами файл и очень удобен для возможности регистрировать вывод команд.
Выводом можно управлять с помощью всех различных параметров, доступных для настройки нормального вывода команды DIR; просто добавьте перенаправление вывода в конце любых аргументов, которые вы хотите отправить этот вывод в текстовый файл.
Обновление: создание контекстного меню, вызываемого правой кнопкой мыши, для создания списка содержимого каталога
Создайте командный файл и сохраните его как % windir% \ DirList.bat
:
@ эхо выкл.
установить dirpath =% 1
dir% dirpath% / -p / o: gn> "% dirpath% \ DirContents.txt"
выход
Откройте каталог SendTo
:
Windows 7 / Vista: % appdata% \ Microsoft \ Windows \ SendTo
Windows XP: % USERPROFILE% \ SendTo
Создайте новый ярлык, указывающий на DirList.bat
и назовите его как хотите.
Теперь, щелкнув правой кнопкой мыши любой каталог и выбрав подменю SendTo
, вы увидите новую команду для вывода содержимого каталога.
ПРИМЕЧАНИЕ: Это будет работать только при щелчке правой кнопкой мыши по каталогу и отобразит только содержимое каталога, по которому вы щелкнули правой кнопкой мыши. Он также сохраняет список в этот каталог (чтобы избежать перезаписи других файлов). Сценарий можно легко изменить, чтобы изменить место хранения файла списка вывода.
Команда Linux LS — Как вывести список файлов в каталоге + флаги опций
С момента создания Unix в 1970-х годах многие операционные системы использовали его в качестве основы. Многие из этих операционных систем вышли из строя, а другие преуспели.
Linux — одна из самых популярных операционных систем на базе Unix. Это открытый исходный код, который используется во многих отраслях по всему миру.
Одной из удивительных особенностей операционной системы Linux является интерфейс командной строки (CLI), который позволяет пользователям взаимодействовать со своим компьютером из оболочки.Оболочка Linux — это среда REPL ( R ead, E valuate, P rint, L oop), где пользователи могут вводить команду, а оболочка запускает ее и возвращает результат.
Команда ls
— одна из многих команд Linux, которые позволяют пользователю выводить список файлов или каталогов из интерфейса командной строки.
В этой статье мы подробно рассмотрим команду ls
и некоторые из наиболее важных флагов, которые вам понадобятся изо дня в день.
Предварительные требования
- Компьютер с каталогами и файлами
- Установите один из дистрибутивов Linux
- Базовые знания навигации по интерфейсу командной строки
- Улыбка на вашем лице 🙂
Команда Linux ls
Команда ls
используется для вывода списка файлов или каталогов в Linux и других операционных системах на базе Unix.
Так же, как вы перемещаетесь в проводнике файлов или Finder с графическим интерфейсом, команда ls
позволяет по умолчанию вывести список всех файлов или каталогов в текущем каталоге и в дальнейшем взаимодействовать с ними через командную строку.
Запустите свой терминал и введите ls
, чтобы увидеть это в действии:
Как перечислить файлы в каталоге с параметрами
Команда ls
также принимает некоторые флаги (также известные как параметры), которые представляют собой дополнительную информацию, которая изменяется как файлы или каталоги перечислены в вашем терминале.
Другими словами, флаги изменяют способ работы команды ls
:
ls [флаги] [каталог]
PS: слово содержит , используемое в статье, относится к файлам и каталогам , которые являются перечислено, а не фактическое содержимое файлов / каталогов?
Список файлов в текущем рабочем каталоге
Введите команду ls
, чтобы вывести список содержимого текущего рабочего каталога:
Список файлов в другом каталоге
Введите команду ls [здесь путь к каталогу]
, чтобы вывести список содержимое другого каталога:
Список файлов в корневом каталоге
Введите команду ls /
, чтобы просмотреть содержимое корневого каталога:
Список файлов в родительском каталоге
Введите ls. .
, чтобы вывести список содержимого родительского каталога на один уровень выше. Используйте ls ../ ..
для содержимого двумя уровнями выше:
Список файлов в домашнем каталоге пользователя (/ home / user)
Введите команду ls ~
, чтобы вывести список содержимого в домашнем каталоге пользователя:
Список только каталогов
Введите команду ls -d * /
, чтобы отобразить только каталоги:
Список файлов с подкаталогами
Введите команду ls *
, чтобы вывести список содержимого каталога с его подкаталогами:
Список файлы рекурсивно
Введите команду ls -R
, чтобы вывести список всех файлов и каталогов с соответствующими подкаталогами до последнего файла:
Если у вас много файлов, это может занять очень много времени, так как каждый отдельный файл в каждом каталоге будет распечатан.Вместо этого вы можете указать каталог для запуска этой команды, например: ls Downloads -R
Список файлов с указанием их размеров
Введите команду ls -s
( s в нижнем регистре), чтобы вывести список файлов или каталоги с их размерами:
Список файлов в длинном формате
Введите команду ls -l
, чтобы вывести содержимое каталога в виде таблицы со столбцами, включая:
- права доступа к содержимому
- количество ссылок на содержимое
- владелец содержимого
- владелец группы содержимого
- размер содержимого в байтах
- дата / время последнего изменения содержимого
- имя файла или каталога
Список файлов в длинном формате с читаемыми размерами файлов
Введите команду ls -lh
, чтобы вывести список файлов или каталогов в том же формате таблицы, что и выше, но с другим столбцом, представляющим размер каждого файла / каталога:
Обратите внимание, что размеры указаны в байтах (B), мегабайтах (МБ), гигабайтах (ГБ) или терабайтах (ТБ), если размер файла или каталога превышает 1024 байта.
Список файлов, включая скрытые файлы
Введите команду ls -a
, чтобы вывести список файлов или каталогов, включая скрытые файлы или каталоги. В Linux все, что начинается с .
считается скрытым файлом:
Список файлов в длинном формате, включая скрытые файлы
Введите команду ls -l -a
или ls -a -l
или ls -la
или ls -al
, чтобы список файлов или каталогов в формате таблицы с дополнительной информацией, включая скрытые файлы или каталоги:
Список файлов и сортировка по дате и времени
Введите команду ls -t
, чтобы вывести список файлов или каталогов и отсортировать по дате и времени последнего изменения в порядке убывания (от наибольшего к наименьшему).
Вы также можете добавить флаг -r
, чтобы изменить порядок сортировки, например: ls -tr
:
Список файлов и сортировка по размеру файла
Введите ls -S
( S — это uppercase), чтобы вывести список файлов или каталогов и отсортировать их по дате или времени в порядке убывания (от наибольшего к наименьшему).
Вы также можете добавить флаг -r
, чтобы изменить порядок сортировки, например: ls -Sr
:
Список файлов и вывод результата в файл
Введите ls> output.txt
, чтобы распечатать выходные данные предыдущей команды в файле output.txt
. Вы можете использовать любой из рассмотренных ранее флагов, например -la
— ключевым моментом здесь является то, что результат будет выводиться в файл, а не регистрироваться в командной строке.
Затем вы можете использовать файл по своему усмотрению или записать содержимое файла с помощью cat output.txt
:
Существует множество других команд и комбинаций, которые вы можете использовать для составления списка файлов и каталогов в зависимости от ваших потребностей.Следует помнить о возможности одновременного объединения нескольких команд.
Представьте, что вы хотите перечислить файл в длинном формате, включая скрытые файлы, и отсортировать по размеру файла. Команда будет выглядеть так: ls -alS
, которая представляет собой комбинацию ls -l
, ls -a
и ls -S
.
Если вы забыли какую-либо команду или не знаете, что делать, вы можете запустить ls --help
или man ls
, чтобы отобразить руководство со всеми возможными параметрами для команды ls
:
Спасибо за чтение !
Список файлов в каталоге в Unix
Вы можете использовать команду ls
для вывода списка файлов в любом каталоге, к которому у вас есть доступ.Для простого вывода списка каталогов в командной строке Unix введите:
лс
Эта команда выведет список имен всех файлов и каталогов в текущем рабочем каталоге.
- Вы можете ограничить количество описываемых файлов, используя фрагменты имен файлов и подстановочные знаки. Примеры этого:
«>
ls привет
Выводит список файлов с полным именем
hello
; еслиhello
— это каталог, отображает содержимое каталогаhello
.LS hel *
Список всех файлов в каталоге, которые начинаются с символов
hel
(например, файлы с именамиhel
,hello
иhello.officer
).ад?
Список файлов, которые начинаются с
hell
, за которым следует один символ, например,helli
,hello
иhell1
.*
представляет любое количество неизвестных символов, а?
представляет собой только один неизвестный символ.Можно использовать*
и?
в любом месте фрагмента имени файла. - Если вы хотите перечислить файлы в другом каталоге, используйте команду
ls
вместе с путем к каталогу. Например, если вы находитесь в своем домашнем каталоге и хотите просмотреть содержимое каталога/ etc
, введите:лс / пр.
Это будет список содержимого каталога
/ etc
в столбцах. - Несколько параметров управляют способом отображения получаемой информации.В этом формате используются параметры:
ls -option имя_файла
Ни параметры, ни имя файла не требуются (вы можете использовать
ls
отдельно, чтобы просмотреть все файлы в каталоге). У вас может быть несколько параметров и несколько имен файлов в строке.Опции, доступные для
ls
, слишком многочисленны, чтобы перечислять их здесь, но вы можете увидеть их все на страницах онлайн-руководства (man).Некоторые из наиболее полезных опций для
ls
:-a
Показывает все файлы, включая файлы, начинающиеся с
.
(период). Точка является особенной в файловой системе Unix.-d
Показывает имена каталогов, но не содержимое
-F
Помечает специальные файлы символами, чтобы указать, что они собой представляют:
/
для каталогов,@
для символических ссылок,*
для исполняемых программ-л
Показывает права файла, владельца, размер в байтах и время последней модификации файла.(
l
означает «длинный».)-R
Рекурсивно перечисляет подкаталоги
Опции можно комбинировать. Чтобы перечислить все файлы в каталоге в длинном формате с отметками для типов файлов, введите:
LS-FLG
- Как и многие другие команды Unix, вы можете перенаправить вывод из
ls
в файл или передать его другой команде. Если вы хотите сохранить список файлов в вашем каталоге в файл с именемfoo
, вы должны использовать следующую комбинацию команд:ls> foo
Для более полного обсуждения команды ls
см. Страницы онлайн-руководства. В командной строке Unix введите:
человек lsКоманда
ls в Linux / Unix | список файлов / каталогов
ls — это команда оболочки Linux, которая выводит список содержимого каталогов файлов и каталогов.
ls синтаксис
$ ls [ опции ] [ файл | реж ]
Параметры команды ls
Основные параметры команды ls:
опция | описание |
---|---|
ls -a | перечисляет все файлы, включая скрытые, начинающиеся с ‘.’ |
ls — цвет | цветной список [= всегда / никогда / автоматически] |
ls -d | список каталогов — с ‘* /’ |
л. с -F | добавить один символ * / => @ | предприятиям |
ls -i | список индексных индексов файла |
ls -l | список с длинным форматом — показать разрешения |
ls -la | длинный список списка, включая скрытые файлы |
ls -lh | список длинного формата с читаемым размером файла |
ls -ls | Списокв длинном формате с размером файла |
LS-R | список в обратном порядке |
LS-R | рекурсивно перечислить дерево каталогов |
ls -s | размер файла списка |
LS-S | сортировать по размеру файла |
LS-T | сортировать по времени и дате |
LS-X | сортировать по расширенному имени |
Примеры команды ls
Вы можете нажать вкладку кнопку для автозаполнения имен файлов или папок.
Каталог списка Документы / книги с относительным путем путь:
$ ls Документы / книги
Список каталога / home / user / Documents / Books с абсолютным путем .
$ ls / home / user / Documents / Books
Список корневого каталога:
$ ls /
Список родительского каталога:
$ ls ..
Вывести домашний каталог пользователя (например,g: / home / user):
$ ls ~
Список в длинном формате:
$ ls -l
Показать скрытые файлы:
$ ls -a
Список с длинным форматом и показать скрытые файлы:
$ ls -la
Сортировать по дате / времени:
$ ls -t
Сортировать по размеру файла:
$ ls -S
Список всех подкаталогов:
$ ls *
Рекурсивный древовидный список каталогов:
$ ls -R
Список только текстовых файлов с подстановочным знаком:
$ ls *.