🐧 Linux Junior. Программирование под Linux.
3.12K subscribers
159 photos
2 videos
1 file
89 links
Канал для программистов работающих с Linux.
Почти все Python девелоперы с нами ну и другие тоже подтянутся.

По рекламе: @jannytg
@anothertechrock
Download Telegram
👩‍💻 Команда lsof

В Linux всё — это файл: обычные файлы, сокеты, устройства, каталоги, процессы. "lsof" расшифровывается как List Open Files — "список открытых файлов".

Соответвенно, команда lsof позволяет просматривать информацию об открытых файлах и связанных с ними процессах:

✔️ какие файлы, сокеты и порты открыты
✔️ каким процессом они используются
✔️ кто блокирует нужный файл
✔️ что "занимает" устройство, диск или порт

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

⚙️ Синтаксис:

lsof [опции]


⚙️ Примеры использования

1️⃣ Проверить, кто занимает порт.
lsof -i :80

Покажет процесс (PID), который слушает порт 80.

2️⃣ Найти процесс, держащий файл "занятым".
lsof /path/to/file

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

3️⃣ Проверить активные сетевые соединения.
lsof -i

Выведет список всех TCP/UDP подключений (локальные и удалённые адреса, PID, программа).

4️⃣ Найти удалённые, но не освобождённые файлы.
lsof +L1

Полезно, если диск "заполнен", но место не освобождается — это покажет процессы, держащие "удалённые" файлы открытыми.

5️⃣ Вывести все файлы, открытые процессом.
lsof -p 1234

Покажет, какие файлы, сокеты и устройства открыты у процесса с PID 1234.

6️⃣ Посмотреть, кто использует каталог.
lsof +D /var/log/

Полезно при попытке размонтировать диск или директорию — можно увидеть, кто удерживает файлы внутри.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥5
👩‍💻 Команда fd — быстрая и удобная альтернатива find

fd — это современная, быстрая и удобная альтернатива стандартной команде find. Она делает то же самое — ищет файлы и каталоги, — но проще в использовании, работает быстрее и выдает чистый, цветной, читаемый вывод.

⚙️ Установка

В большинстве дистрибутивов Linux fd доступна в официальных репозиториях:

sudo apt install fd-find    # Для Debian/Ubuntu  
sudo dnf install fd-find # Для Fedora
sudo pacman -S fd # Для Arch Linux


⚙️ Синтаксис:

fd [паттерн] [директория]


⚙️ Базовое использование

1️⃣ Поиск по имени файла:

fd filename


Найдёт все файлы, имя которых содержит “filename”.

2️⃣ Поиск по шаблону:

fd 'pattern'


Поддерживаются регулярные выражения для шаблонов.

3️⃣ Поиск в определённой директории:

fd filename /path/to/dir


4️⃣ Исключение бинарных файлов (по умолчанию):

fd 'filename'


fd ищет только в текстовых файлах, игнорируя двоичные.

5️⃣ Поиск по типу файлов:
• Только файлы: fd -t f
• Только директории: fd -t d

6️⃣ Вывод полной информации:

fd -l


Показывает подробные пути к найденным объектам.

7️⃣ Поиск с учётом регистра:

fd -s filename


8️⃣ Пример поиска в проекте:
Найти все файлы с расширением .rs в текущем каталоге и его подкаталогах:

fd '\.rs$'
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🆒1