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

Неважно кто вы, разработчик ПО, специалист по данным, менеджер ИТ-инфраструктуры или просто любитель компьютеров  —  вам нужно знать, как пользоваться терминалом в Linux и macOS. Но сложность в том, что необходимо запомнить слишком много команд. И если у вас нет чудо-памяти, время от времени приходится искать в Интернете ту или иную команду.

Поиск самых больших файлов с помощью утилиты ls

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

Так что нам осталось только подготовить список файлов, среди которых мы будем искать самые большие. Для этого используем команду find, которая и умеет искать рекурсивно файлы на нашей файловой системе. Особо требований у нас нет — просто файлы (без директорий/блоковых устройств/сокетов и прочих файлов в общем смысле Unix).

find . -type f -print

И вот у нас есть уже список всех файлов, которые можно найти из текущей директории. Теперь нужно их передать на вход ls с помощью команды xargs, а результат отсортировать по 5-му столбцу (где и указан размер файла). Ну и head для того, чтобы листинг не был громоздким:

find . -type f -print \ | xargs ls -l \ | sort -r -n -k 5,5 \ | head -10

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

Узнать размер диска, занятое и свободное место

Чтобы вывести список всех подключенных дисков и файловых систем с указанием общего размера, свободного и занятого места, введите команду:

Читайте также:  ТОП-10 ЛУЧШИХ ДИСТРИБУТИВОВ LINUX ДЛЯ НОУТБУКОВ В 2021 ГОДУ

df -ah

Результат будет выглядеть примерно так:

Строки, начинающиеся с /dev/ — это физические диски, ниже — файловые системы на этих дисках. Параметр «-a» необходим для того, чтобы вывести информацию о всех установленных дисках в системе.

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

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

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

[~ / public_html / rss] # ls ./ ../

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

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

ls * .txt

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

ls r *

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

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

ls [aeiou] *

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

ls ~ / public_html

В приведенном выше примере команда ls перечисляет все файлы в каталоге public_html, который является частью вашего домашнего каталога, который представлен тильдой. Если этот каталог не существует, вы получите сообщение об ошибке.

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

Файлы и каталоги

Смена текущего каталога

Для перехода между каталогами файловой системы вам лишь нужно знать, как применять команду cd.

pwd # перейти к текущему каталогу cd # сменить текущий каталог на домашний cd /bin # перейти в каталог /bin cd .. # перейти в родительский каталог

Содержимое каталога

Чтобы вывести в каталоге файлы, папки, а также их свойства, не обойтись без команды ls.

Читайте также:  Linux командная строка — что это такое, как вызвать

ls # вывести список файлов и каталогов в текущем каталоге ls /bin # вывести список файлов и каталогов в /bin ls -l # вывести подробную информацию (размер, дата…) ls -a # показать скрытые файлы и каталоги ls -ld # вывести информацию о текущем каталоге (не файлов) ls my* # вывести файлы с именем, начинающимся на my… tree # показать дерево текущего каталога

Скачать файл из Интернета

Самый простой способ скачать файл с веб-серверов  —  это команда wget.

wget # скачать файл с указанного URL в текущий каталог

Файлы и каталоги

Скачивание файла с помощью wget

Создать каталог

Если вы хотите создать папку, используйте команду mkdir.

mkdir movies # создать папку с названием «movies» в текущем каталоге mkdir -p movies/genres/scifi # создать папку с названием «movies», вложенный в «genres», и «scifi»

Копирование, перемещение и удаление

Как правило, функции копирования, перемещения и удаления выполняют через файловый менеджер, но можно делать это и через терминал.

rmdir movies # удалить пустой каталог movies rm -rf movies # удалить каталог movies и его файлы rm # удалить файл mv /home/michael/ /home/john/ # переместить файл из /home/michael в /home/john cp /home/michael/ /home/john/ # скопировать файл из /home/michael в /home/john cp -R letters/ memories/ # скопировать содержимое папки «letters» в папку «memories» cp -R letters ~/Desktop # скопировать папку «letters» вставить на рабочий стол

Права доступа и владельцы

Права доступа и владельца файла или каталога можно изменить с помощью команды chmod и chown.

chmod 777 # изменить права файла chmod +x # сделать файл выполняющим chown guille # сменить владельца файла «» на пользователя «guille» ./ # запустить

Поиск файлов

Забыли где файл Хотите вывести все PDF файлы, находящиеся в папке? С помощью команды find вы можете сделать это и многое другое.

find . -name # найти файл с названием «» в текущем каталоге find /home/joe/Downloads -name *.pdf # найти PDF файлы в папке Downloads find / -executable -atime -10 # найти исполняемые файлы в каталоге root, доступ к котором был 10 минут назад find ~ -newer # найти в домашнем каталоге файл, который редактировался после файла «»

Читайте также:  История версий iOS — от iPhone OS до iOS 15

Вычисление контрольной суммы SHA256 файла

При скачивании любой программы из Интернета, рекомендуется проверить контрольную сумму SHA, чтобы убедиться, всё ли верно скачалось. И сделать это гораздо легче через терминал:

# Linux sha256sum # вычисление контрольной суммы SHA 256 файла echo -n “foobar” | sha256sum # вычисление контрольной суммы SHA 256 слова “foobar” # macOS shasum -a 256 # вычисление контрольной суммы SHA 256 файла echo -n “foobar” | shasum -a 256 # вычисление контрольной суммы SHA 256 слова “foobar”

Сжатие и распаковка TAR/ZIP файлов

Файлы и каталоги

Неважно, что у вас TAR или ZIP файл, вы можете распаковать его через терминал или же создать из существующих папок:

# Tar / untar tar -cvzf myfolder # сжатие папки «my_folder» в архив «» tar -xvzf # распаковка файла в текущий каталог tar -C /opt/abc -xvzf # распаковка файла в /opt/abc # Zip / unzip zip -r myfolder # сжатие папки «my_folder» в архив «» unzip # распаковка файла в текущий каталог

Свободное место на диске

Хотите узнать доступное место на жестком диске? Или на внешнем? Или в текущем каталоге? В этих вопросах помогает команда df.

df -k . # свободное место в текущем каталоге

df -k # доступное пространство во смонтированных файловых системахсвободное место на моём компьютере

Получение информации о файлах

Для получения информации о файле в ОС используется функция (), которая выполняет системный вызов stat() по выбранному пути:

open(«», «w»).write(«Это текстовый файл») # вывести некоторые данные о файле print(os.stat(«»))

Получение информации о файлах

Вывод:

_result(st_mode=33206, st_ino=14355223812608232, st_dev=1558443184, st_nlink=1, st_uid=0, st_gid=0, st_size=19, st_atime=1575967618, st_mtime=1575967618, st_ctime=1575966941)

Это вернет кортеж с отдельными метриками. В их числе есть следующие:

Получение информации о файлах
    • st_size — размер файла в байтах
    • st_atime — время последнего доступа в секундах (временная метка)
    • st_mtime — время последнего изменения
    • st_ctime — в Windows это время создания файла, а в Linux — последнего изменения метаданных

Для получения конкретного атрибута нужно писать следующим образом:

# например, получить размер файла print(«Размер файла:», os.stat(«»).st_size)

Вывод:

Получение информации о файлах

Размер файла: 19

На этой странице больше об атрибутах.