Как вывести файлы текущей директории которые не являются регулярными файлами

Обновлено: 04.07.2024

Продолжение перевода первой части руководства. Начало тут.

В данном отрывке рассмотрены команды работы с файловой системой и файлами, такие как ls, mkdir, touch, mv, cp, затронуто использование echo и cat. Рассказано про иноды файловой системы.

Использование команд Linux

Знакомство с ls

А сейчас, мы быстренько пройдемся по команде ls. Скорее всего вы уже хорошо знакомы с этой командой, и знаете, что набрав ls получите список содержимого текущей рабочей директории:

Указав опцию -a, вы можете увидеть полный список, включая скрытые файлы и директории, начинающиеся с ".". Как видно в следующем примере, ls -a выводит также особые связывающие директории "." и "..":

Развернутые списки директорий

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

В следующем примере мы использовали опцию -l чтобы отобразить содержимое моей директории /usr:

Первая колонка показывает информацию о правах доступа для каждого элемента. Чуть позже я объясню, как её интерпретировать. Следующая колонка содержит числа ссылок на каждый элемент файловой системы, позже мы вернемся к этому. Третья и четвертая колонки — это список владельцев и групп, соответственно. Пятая колонка — размер объекта. Шестая — время последнего изменения (mtime) объекта. И наконец, последняя колонка с именами объектов. Если файлы являются символическими ссылками, то вы увидите стрелку -> и путь, куда указывает эта символическая ссылка.

Смотрим на директории

Иногда вы захотите взглянуть на директорию, а не внутрь нее. В этом случае вы можете указать опцию -d, которая скажет ls рассматривать любую директорию, как внутреннюю:

Рекурсивный и инодный списки

Так вы можете использовать -d чтобы смотреть на директорию, но также можно использовать -R для противоположного: не только лишь глянуть внутрь директории, но и рекурсивно посмотреть все директории с файлами внутри нее! Мы не включим в руководство никакого примера вывода для этой опции (поскольку обычно он очень объемный), но возможно вы захотите попробовать несколько команд ls -R и ls -Rl, чтобы почувствовать как это работает.

Наконец, опция -i может использоваться для отображения номеров инодов для объектов в списке файловой системы:

Понятие инода

Каждому объекту файловой системы назначен уникальный индекс, называемый номером инода. Это может показаться банальным, но понятие инодов очень важно для понимания большинства операций в файловой системе. Рассмотрим например ссылки "." и "..", которые появляются в каждой директории. Чтобы полностью понять, чем на самом деле является директория "..", мы сперва взглянем на номер инода у /usr/local:

$ ls -id /usr/local
5120 /usr/local

У директории /usr/local номер инода равен 5120. А теперь посмотрим номер инода у /usr/local/bin/..:

$ ls -id /usr/local/bin/..
5120 /usr/local/bin/..

На самом деле, мы даже можем увидеть общее количество ссылок ведущих на этот, 5120 инод, используя команду ls -dl:

Если взглянуть на вторую колонку слева, то видно, что на директорию /usr/local (инод 5120) ссылаются восемь раз. На моей системе на этот инод ведут следующие пути:

/usr/local
/usr/local/.
/usr/local/bin/..
/usr/local/games/..
/usr/local/lib/..
/usr/local/sbin/..
/usr/local/share/..
/usr/local/src/..

mkdir

Давайте быстренько пройдемся по команде mkdir, которая используется для создания новых директорий. Следующий пример создает три новых директории, tic, tac, и toe, все внутри /tmp:

$ cd /tmp
$ mkdir tic tac toe

По умолчанию, команда mkdir не создает для вас родительские директории; весь путь вплоть до последнего (создаваемого) элемента должен существовать. Так, если вы захотите создать вложенные директории won/der/ful, вам придется выполнить три отдельные команды mkdir:

$ mkdir won/der/ful
mkdir: cannot create directory `won/der/ful': No such file or directory
$ mkdir won
$ mkdir won/der
$ mkdir won/der/ful

Однако, у mkdir есть очень удобная опция -p, которая говорит mkdir создавать любые отсутствующие родительские директории, как можете увидеть тут:

$ mkdir -p easy/as/pie

В целом очень просто. Чтобы узнать больше о команде mkdir наберите man mkdir и прочитайте инструкцию. Это же касается почти всех команд, рассмотренных здесь (например man ls), исключая cd, которая встроена в bash.

touch

Сейчас мы собираемся окинуть взглядом команды cp и mv, используемые для копирования, переименования и перемещения файлов и директорий. Но начнем обзор воспользовавшись командой touch, чтобы создать файл в /tmp:

$ cd /tmp
$ touch copyme

Команда touch обновляет «mtime» (время последней модификации — прим. пер.) файла, если тот существует (вспомните шестую колонку в выводе ls -l). Если файл не существует, то новый, пустой файл будет создан. Сейчас у вас должен быть файл /tmp/copyme с нулевым размером.

Теперь, когда файл существует, давайте добавим немного данных в него. Можно сделать это с помощью команды echo, которая принимает аргументы и печатает их на стандартный вывод. Сперва, команда echo сама по себе:

$ echo "firstfile"
firstfile

А сейчас, та же команда echo, но с перенаправлением вывода:

$ echo "firstfile" > copyme

Знак «больше» сообщает оболочке записывать вывод echo в файл по имени copyme. Этот файл будет создан, если не существовал, или перезаписан, если существует. Набрав ls -l, увидим, что файл copyme имеет размер в 10 байт, так как содержит слово firstfile и символ новой строки:

cat и cp

Чтобы вывести содержимое файла на терминал, используйте команду cat:

$ cat copyme
firstfile

Сейчас, мы можем воспользоваться основным вызовом команды cp для создания файла copiedme из оригинального copyme:

$ cp copyme copiedme

Ниже проверим, что это действительно разные файлы; у них отличаются номера инодов:

А сейчас давайте воспользуемся командой mv для переименования copiedme в movedme. Номер иноды останется прежний; однако, имя файла, указывающее на инод, изменится.

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

Пока мы рассказываем об mv, давайте посмотрим, как еще можно использовать эту команду. mv, помимо возможности переименовать файлы, позволяет перемещать один или более файлов в другое место в иерархии директорий. Например, чтобы переместить /var/tmp/myfile.txt в директорию /home/drobbins (которая является моей домашней), я наберу (а мог бы воспользоваться

$ mv /var/tmp/myfile.txt /home/drobbins

После этого myfile.txt будет перемещен в /home/drobbins/myfile.txt. И если /home/drobbins располагается в другой файловой системе, нежели /var/tmp, команда mv скопирует myfile.txt в новую файловую систему и удалит его из старой. Как вы уже могли догадаться, когда myfile.txt перемещается между файловыми системами, то myfile.txt на новом месте получает новый номер инода. Это все потому, что у каждой файловой системы свой независимый набор номеров инодов.

Мы также можем воспользоваться mv для перемещения нескольких файлов в одну директорию. К примеру, чтобы переместить myfile1.txt и myarticle3.txt в /home/drobbins, потребуется набрать:

$ mv /var/tmp/myfile1.txt /var/tmp/myarticle3.txt /home/drobbins

Об авторах

Daniel Robbins

Дэниэль Роббинс — основатель сообщества Gentoo и создатель операционной системы Gentoo Linux. Дэниэль проживает в Нью-Мехико со свой женой Мэри и двумя энергичными дочерьми. Он также основатель и глава Funtoo, написал множество технических статей для IBM developerWorks, Intel Developer Services и C/C++ Users Journal.

Chris Houser

Крис Хаусер был сторонником UNIX c 1994 года, когда присоединился к команде администраторов университета Тэйлора (Индиана, США), где получил степень бакалавра в компьютерных науках и математике. После он работал во множестве областей, включая веб-приложения, редактирование видео, драйвера для UNIX и криптографическую защиту. В настоящий момент работает в Sentry Data Systems. Крис также сделал вклад во множество свободных проектов, таких как Gentoo Linux и Clojure, стал соавтором книги The Joy of Clojure.

Aron Griffis

Эйрон Гриффис живет на территории Бостона, где провел последнее десятилетие работая в Hewlett-Packard над такими проектами, как сетевые UNIX-драйвера для Tru64, сертификация безопасности Linux, Xen и KVM виртуализация, и самое последнее — платформа HP ePrint. В свободное от программирования время Эйрон предпочитает размыщлять над проблемами программирования катаясь на своем велосипеде, жонглируя битами, или болея за бостонскую профессиональную бейсбольную команду «Красные Носки».


Что ты написал я не понял, но libastral.so выдал следующую строку:

Пошел бы ты троллить куда-нибудь в другое место, друг недалекий!


Хочу команду пихнуть в сш-скрипт и его пускать.
А можно как-то сделать так, чтобы не задавать путь до диры, а автоматом выводить содержимое той диры, где скрипт будет лежать?




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

Если только текущей директории, то ls. Если сложнее что-то, то используй find. По умолчаниюю они используют текущую директорию (но для старых версий find нужно указывать).


Приведите, пожалуйста, пример

Для вывода содержимого того каталога, где лежит скрипт

Для вывода содержимого того каталога, из которого запущен

Если это не подходит, то сформулируй задачу полностью.


Вроде то, что надо. Скрытые файлы выведет?


Whatever you want:

Вроде то, что надо. Скрытые файлы выведет?

Исходя из вышесказанного ― создай скрытый файл и проверь. Нахера об этом на форуме спрашивать, когда проверить дело пары секунд?


Блин, выводит лишнее. Я положил этот код в файл 1.sh, сделал исполняемым, запустил-получил, что выводит лишнее-не только тот каталог, в котором лежит скрипт


вывело еще и вышележащую папку, вот в чем проблема.


то есть список папок и файлов в ней


Вроде все ок. Но буду тестировать.

Ты еще не видел вывод команды tree — ваще жесть и улет!


гм. Создал в паке новая папка 1, новая пака 2, новая пака 3. В выводе не все есть. не все эти новые папки..


В общем - ни одного работающего как надо решения.



ни одного работающего как надо решения.

man ls
а не наугад тыкай


Делаю 2 дела сразу, вот и никак не соображу. Пробую разное и напишу, когда норм. будет. В маны то заглядываю.


флаги к ls сам добавь какие надо

amorpher ★★★★★ ( 26.03.17 17:57:20 )
Последнее исправление: amorpher 26.03.17 17:58:44 (всего исправлений: 2)



cd $PWD && ls > /куда/надо/list


Вроде не захватывает ничего выше по дереву.По идее-пойдет.Но надо погонять-мало ли..


То, что надо.
Но пока не буду ставить проблему как решенную - вдруг таки есть что-то проблемное в работе команды, что я не вижу.


amorpher ★★★★★ ( 26.03.17 18:52:18 )
Последнее исправление: amorpher 26.03.17 18:57:09 (всего исправлений: 1)


А в чеv разница? напишите коротко -в гугле забанили :-).
Преодолел багу - команда дописывала результаты в файл, а предыдущее не терла. Теперь трет:


на опеннет дали же ссылку, какой ещё тебе гугл?

amorpher ★★★★★ ( 26.03.17 18:59:52 )
Последнее исправление: amorpher 26.03.17 19:02:30 (всего исправлений: 1)


По идее - лучше указать, что файл сохраняется в папку, где я стартую. Что и сделано.


За руководство спасибо, сохраню.


Уяснил разницу между >> и > .Когда 2 -дописывает файл, когда 1 нет.
Тогда нет смысла дропать файл перед этим - если там не то, что надо -он перезапишется.
Тогда так:


Цель простая - есть дира в которой 100500 вложенных дир с файлом. Цель чтобы получить содержимое этих дир - какие файлы в них и поддиры и сформировать документ. Не руками а автоматом.


/root/ bash: tree: команда не найдена root@debian:


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


Tree — команда рекурсивного отображения структуры каталогов, выводящая перечень файлов с соответствующими глубине отступами и цветовой идентификацией при установленной переменной окружения LS_COLORS и выводе в терминал. По дефолту ее нет. Сойдет и ls. Вложенность порядка 2-х всего.



Таки бажно. Если запустить из /root/X/TMP/новая папка, то ничего не создает. Однако если запустить из /root/X/TMP/2222 -все ок.
То есть нельзя класть в паку с русским именем. Вот в чем дело. Баг ls?

Нет, $PWD нужно взять в ковычки, из-за пробела в имени директории не происходит переход и возвращается код ошибки, в результате команда ls не отрабатывает, т.к. конструкция команда1 && команда2 отработает только в случае если первая команда отработала без ошибок.

Чтобы просмотреть содержимое подкаталога `work' в текущем каталоге, введите:

Чтобы просмотреть содержимое каталога `/usr/doc', введите:

$ ls /usr/doc [Enter]

Из листинга по умолчанию Вы не сможете отличить каталоги и исполняемые файлы от обычных. Используйте ключ `-F', который заставит ls поместить символ `/' после имен подкаталогов и символ `*' после имен исполняемых файлов:

В этом примере текущий рабочий каталог содержит исполняемый файл `repeat', каталог `words', и несколько файлов других типов `test1' и `test2'.

Еще один способ просмотра содержимого каталогов - использование ``менеджера файлов'' , которых для Linux создано достаточно много; наиболее популярным является ``Midnight Commander'' или mc.

Чтобы вывести более подробный листинг каталога, используйте ls с ключом `-l' (``long''). Листинг будет содержать размер каждого файла в байтах, время последней модификации, тип файла, имя владельца и права доступа.

Для вывода подробной информации о каталоге `/usr/doc/bash', введите: Первая строка содержит информацию о полном объеме занимаемого каталогом дискового пространства в блоках по 1024 байта (в данном случае 72). Каждая последующая строка содержит несколько колонок с информацией о каждом файле.

Первая колонка указывает тип файла и права доступа к нему. Первый символ в этой колонке определяет тип файла; тире (`-') означает обычный файл (по умолчанию). Каталоги обозначаются буквой `d', а символические ссылки - буквой `l'. Остальные девять символов в первой колонке указывают права доступа к файлу. Вторая колонка указывает количество жестких ссылов на файл. Третья и четвертая колонки указывают пользователя и группу, которые владеют этим файлом. Пятая колонка содержит размер файла в байтах, шестая - время и дату последней модификации файла, а в последней колонке указано имя файла, к которому относится информация.

Чтобы просмотреть каталог рекурсивно, то есть со всеми содержащимися в нем подкаталогами, используйте опцию `-R'. Например, для текущего каталога введите: В данном примере текущий рабочий каталог содержит два подкаталога, `work' и `play', но не содержит файлов. Каждый из подкаталогов содержит файл `notes'.

Чтобы вывести полное оглавление все файловой системы, наберите:

Обычно этот ключ комбинируют с опцией `-l', чтобы вывести наиболее полный листинг файлов системы:

Примечание: Некоторые каталоги могут не попасть в листинг, если у Вас нет права доступа к ним.

Чтобы отсортировать список файлов в каталоге по времени создания или модификации, используйте опцию `-t'. Например, чтобы вывести список файлов в каталоге `/usr/tmp', чтобы самые новые файлы были вверху списка, введите:

$ ls -t /usr/tmp [Enter]

По умолчанию, ls не выводит имена файлов, начинающиеся с символа ``точка'' (`.'). Чтобы уменьшить листинг, многие приложения ``скрывают'' файлы конфигурации в Вашем домашнем каталоге, присваивая им имена, начинающиеся с точки; они называются dot-файлы, или ``скрытые'' . Каждый каталог имеет два специальных dot-файла: `..' - родительский каталог и `.' - сам этот каталог.

Чтобы увидеть все файлы в каталоге, включая скрытые, используйте опцию `-a'. Например, для текущего каталога:

Чтобы увидеть все файлы, исключая специальные `..' и `.', используйте опцию `'-A:

Чтобы увидеть цветной листинг каталога, используйте ls с ключом `--color' ; тогда все имена файлов будут выведены разными цветами, в зависимости от их содержания. По умолчанию каталоги выводятся синим, текстовые файлы - белым, исполняемые - зеленым и т.д.

Примечание: Обычно для команды `ls -color' создается псевдоним `ls', так что листинг выводится в цвете по умолчанию.

Для того, чтобы вывести граф иерархии каталогов, используйте утилиту tree. Например, для вывода дерева каталогов, начиная с текущего, наберите:

В этом примере выводится дерево каталогов, в котором текущий каталог содержит два подкаталога `projects' и `trip'; а каталог `projects', в свою очередь, содержит подкаталоги `current' и `old'.

Чтобы вывести дерево каталогов для определенного каталога, укажите его имя в качестве аргумента tree. Например, для Вашего домашнего каталога, введите:

Чтобы вывести дерево каталогов, в котором будут присутствовать только имена каталогов, используйте опцию `-d'. Это полезно при выводе полного дерева каталогов системы:

$ tree -d / > tree [Enter]

Команда ls имеет много опций для управления листингом и отображаемой информацией о файлах; приведенная таблица описывает некоторые из них.

Опция Описание
--color Вывод имен файлов в цвете, в зависимости от их типа.
-R Рекурсивный список файлов.
-a Вывод всех файлов, включая скрытые.
-d Вывод только имен каталогов, без промсмотра их содержимого.
-f Вывод содержимого каталога в том порядке, в котором оно записано на диск.
-l Подробный листинг.
-r Сортировка содержимого каталога в обратном порядке.
-s Вывод размера - в блоках по 1K - для каждого файла.
-t Сортировка по времени создания или модификации файла.

Примечание: Вы можете комбинировать опции в любом порядке; например, чтобы вывести список файлов, отсортированный по времени, со всеми атрибутами, введите `-lt'. Чтобы рекурсивно отобразить все скрытые файлы и их атрибуты, используйте `-lRa'. Порядок опций не имеет значения, так что `-lRa' означает то же самое, что и `-alR'.


Next: Копирование файлов и каталогов Up: Работа с файлами Previous: Перемещение по каталогам Contents Index Alex Otwagin 2002-12-16


Всё чаще современные программисты предпочитают работать с языком программирования Python, потому что он очень гибкий, позволяющий легко взаимодействовать с операционной системой. Он также поставляется с функциями по работе с файловой системой. Решение задачи распечатки списка файлов в директории можно решить используя разные модули: os, subprocess, fnmatch и pathlib. Следующие решения демонстрируют, как успешно воспользоваться этими модулями.

Применение os.walk()

Модуль os содержит длинный список методов, которые касаются работы с файловой системой и операционной системой. Один из них walk(), возвращающий имена файлов в дереве каталогов, двигаясь по дереву сверху вниз или снизу вверх (сверху вниз по умолчанию).

os.walk() возвращает список из трех элементов: имя корневого каталога, список имен вложенных папок и список файлов в текущем каталоге. Он одинаково хорошо работает с интерпретаторами Python 2 и 3.

Использование командной строки, через subprocess

Модуль subprocess позволяет выполнить системную команду и собрать её результат. В нашем случае вызываемая системная команда выглядит следующим образом:

Инструкция ls -p . распечатывает список файлов текущего каталога, добавляя разделитель / в конце имени каждого подкаталога, которые нам понадобится на следующем шаге. Вывод этого вызова передается команде grep, которая отфильтровывает данные по мере поступления. Параметры -v / $ исключают все имена записей, которые заканчиваются разделителем /. Фактически / $ -- регулярное выражение, которое соответствует всем строкам, содержащим символ / самым последним символом в строке, который определяется символом $.

Модуль subprocess позволяет строить настоящие конвейеры, а также соединять входные и выходные потоки, как это делается в командной строке. Вызов метода subprocess.Popen() открывает соответствующий процесс и определяет два параметра stdin и stdout.

Первая переменная ls определяет процесс выполнения ls –p для захвата stdout в конвейере. Поэтому поток stdout определяется как subprocess.PIPE. Вторая переменная grep также определяется как процесс, но вместо этого выполняет инструкцию grep –v /$.

Чтобы прочитать вывод команды ls из конвейера, поток stdin grep присваиваивается в ls.stdout. В заключение, переменная endOfPipe считывает вывод команды grep из grep.stdout, затем распечатывается в stdout циклом for.

Данное решение работает достаточно хорошо с Python 2 и 3, но его можно улучшить. Рассмотрим другие варианты.

Комбинация os и fnmatch

Решение, использующее подпроцессы, элегантно, но требует большого количества кода. Вместо этого, давайте объединим методы из двух модулей os и fnmatch. Этот вариант также работает с Python 2 и 3.

В качестве первого шага, импортируем модули os и fnmatch. Далее определим каталог, в котором нужно перечислить файлы, используя os.listdir(), а также шаблон для фильтрации файлов. В цикле for выполняется итерация списка записей, хранящихся в переменной listOfFiles.

В завершение, с помощью fnmatch отфильтровываются искомые записи и распечатываются соответствующие записи в stdout.

Использование os.listdir() и генераторов

Следующий вариант объединяет метод os.listdir() с функцией генератором. Код работает как с версиями 2, так и с 3 Python.

Как уже было сказано ранее, listdir() возвращает список записей для данного каталога. Метод os.path.isfile() возвращает True, если данная запись является файлом. Оператор yield завершает работу функции, но сохраняя текущее состояние и возвращает только имя записи являющейся файлом.

Использование pathlib

Модуль pathlib предназначен для парсинга, сборки, тестирования и иной работы с именами файлов и их путями, используя объектно-ориентированный API вместо низкоуровневых строковых операций. Начиная с Python 3 модуль находится в стандартной библиотеке.

В следующем листинге определяется текущий каталог точкой («.»). Затем метод iterdir() возвращает итератор, который возвращает имена всех файлов. Далее циклом for распечатываются имена файлов друг за другом.

В качестве альтернативы, можно отфильтровать файлы по именам с помощью метода glob. Таким образом, получаем требуемые файлы. Например, в приведенном ниже коде перечисляются Python файлы в выбранном каталоге, указав шаблон «*.py» в glob.

Использование os.scandir()

В Python 3.6 добавлен новый метод scandir(), доступный из модуля os. Как понятно из названия он значительно упрощает получение списка файлов в каталоге.

Чтобы определить текущий рабочий каталог и сохранить его, инициализируем значение переменной path, для этого импортируем модуль os и вызовем функцию getcwd(). Далее, scandir() возвращает список записей для выбранного пути, которые проверяются на принадлежность файлу, используя метод is_file().

Вывод

Ведутся споры, какой вариант является лучшим, какой наиболее элегантным и какой является наиболее "питоничным". Мне нравится простота метода os.walk(), а также модули fnmatch и pathlib.

Две версии с процессами/конвейером и итератором требуют более глубокого понимания процессов UNIX и знаний Python, поэтому они не могут быть предпочтительными для всех программистов из-за их дополнительной (и избыточной) сложности.

Чтобы найти ответ на этот вопрос, выберем самой быстрой из них, воспользовавшись удобным модулем timeit. Данный модуль подсчитывает время, прошедшее между двумя событиями.

Для сравнения всех решений без их изменений, воспользуемся функциональностью Python: вызовем интерпретатор с модулем timeit и соответствующим Python скриптом. Для автоматизации процесса напишем shell скрипт

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

Показать файлы в папке 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, которые также работают в Терминале.

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