15 самых полезных применений команды find в Linux

Всякий человек, совершающий побег из семьи Windows, некоторое время непременно будет жить на два дома, перескакивая то туда, то сюда. И если в семействе Linux относятся к такому положению вполне благосклонно, предоставляя полный доступ к разделам Windows, то Windows, наоборот, как ревнивая жена на корню пресекает все попытки добраться до своего имущества. Однако с помощью утилиты Ext2Fsd можно такое положение вещей изменить и с легкостью получить доступ к Linux-разделам.

Видео: Как искать файлы в линукс —

Где поиск в Linux 7 часов назад Linux урок 6. Поиск файлов/директорий/ссылок. Команда find 5 месяцев назад Разведка сайтов. Как искать файлы и каталоги на сервере 9 месяцев назад Linux поиск файлов 10 месяцев назад Линукс поиск файлов find, grep, locate 10 месяцев назад Поиск файлов в Linux и Unix — find, grep, ack, ripgrep 1 год назад Linux. Как найти файлы, занимающие много места на диске. 1 год назад Поиск файлов locate и find | Linux для начинающих 2 года назад Команды терминала Linux. Урок 6. Поиск файлов и текста 4 года назад Поиск файлов в linux exec, ok Часть 4 4 года назад Поиск файлов в linux, find, newer, size, exec, mtime, type Часть 3 4 года назад Поиск файлов в linux Команда find linux опция часть2 4 года назад Поиск файлов в linux. Команда find linux опция -name часть1 4 года назад LPIC 104.7 Поиск и расположение команд и файлов в Linux 6 лет назад

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

find $HOME -name «*.mp3» -print Отыщет все эмпэтришечки в домашнем каталоге пользователя и глубже по всем вложенным директориям.

find . -print Напечатает иерархию поддиректорий начиная с текущей директории.

find . -perm -o+w Найдет все файлы, в которые может писать любой желающий (помимо владельца и члена группы владельца). Такие файлы очень полезно выявлять и исправлять у них права. Полезно в плане безопасности.

find / -type d -name hotgirls Найдет на всех дисках директории с именем hotgirls

find / -type f -perm 0777 -print Найдет все файлы, в которые может писать любой желающий и при этом они являются исполняемыми. Настоящий источник заразы. Запустите эту команду из интереса. Если найдется хотя бы один такой файл, то вы не линуксоид, а ламер позорный, лишь притворяющийся линуксоидом.

Читайте также:  Linux копирование файлов и папок через консоль

find / -perm /u=s Найти все файлы с установленным битом SUID. Эти файлы запускаются с правами владельца. То есть, если исполнимый файл принадлежит root — а таких большинство в системе — и флаг SUID установлен, то в случае запуска этой программы непривилегированным пользователем программа получит полномочия суперпользователя. SUID-файлы нужны, но чем их меньше, тем лучше.

find / -type f -perm 0777 -print -exec chmod 644 {} \;

Найти все опасные файлы с правами 777 и перепилить их в безопасный режим 0644 — владелец может читать и писать, остальные только читать.

find / -type f -name «*.mp3» -exec rm -f {} \; Стереть все эмпэтришки.

find /tmp -type d -empty Найти все пустые директории.

find /tmp -type f -name «.*» Найти все скрытые файлы.

find / -cmin -60 Найти все файлы, которые изменялись в течении последнего часа.

find / -size +50M Найти все файлы, имеющие размер от 50 Мб. Чистка диска!

find / -type f -name *.mp3 -size +10M -exec rm {} \; Найти все MP3-файлы, которые весят слишком много — более 10 Мб — и выпилить их с диска.

Программа с gui FSlint Janitor

Официальный сайт — Команда для установки:

sudo apt install fslint

1 sudo apt install fslint

Запустите программу. Она откроется с активной вкладкой «Дубликаты». По умолчанию используется путь к домашнему каталогу текущего пользователя.

Программа с gui FSlint Janitor

Для начала работы укажите папки для поиска нажав кнопку «Add». Если хотите, что бы сканирование не производилось рекурсивно (просмотр вложенных папок) снимите флаг (на скриншоте обозначен «2»). Затем нажмите кнопку «Найти».

  • Ознакомьтесь с предложением, предоставляет молниеносные скорости и не регистрирует активность пользователей Лучший Сервис VPN
  • Один из лучших сервисов хотя и не дешевый. Множество функций безопасности, поддержка P2P и стримов Сервис NordVPN
  • Я предпочитаю всем сервисам впн создавать свой. Вот инструкция как создать собственный VPN сервер

После сканирования будут найдены дубликаты файлов и отобразится результат. Можно выделить ненужные файлы и удалить. Выделять можно как по одному так и группами. Для этого нажмите кнопку «Выделить» и увидите все возможные варианты (смотрите скриншот).

Из интересных опций я бы отметил ещё поиск пустых каталогов.

Поиск дубликатов в терминале с помощью fdupes

Ссылка на официальный сайт — Команда для установки:

Программа с gui FSlint Janitor

sudo apt-get install fdupes

1 sudo apt-get install fdupes

Работать с программой просто. Введите в терминале ‘fdupes опции путь к папке’. Например, что бы сканировать домашнюю директорию пользователя «vasiliy» укажите fdupes /home/vasiliy. Сканироваться будет только папку «vasiliy» без вложенных каталогов.

Что бы сканировать все каталоги включая вложенные требуется указать опцию «-r». А что бы просканировать и удалить все дубли файлов параметр «-d».  Чтобы сразу сканировать и удалить все дубли в папке и подпапках пользователя «vasiliy» можно указать командой:

Читайте также:  Интерфейс Linux Mint 15 и Ubuntu 13.04 на русском языке

fdupes -rd /home/vasiliy

1 fdupes -rd /home/vasiliy

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

Выбирайте нажав на цифру соответствующую версии файла который желаете сохранить. Остальные будут удалены.

Программа с gui FSlint Janitor

Можно задать параметр «-N». В таком случае вопросов задано не будет. Если желаете доверить все автоматическому режиму укажем:

fdupes -rdN /home/vasiliy

1 fdupes -rdN /home/vasiliy

После завершения работы будет отображен отчет. Знаком «+» указаны файлы сохранённые а знаком «-» удаленные. Вот так удобно и просто. Но будьте внимательны! Не удаляйте все подряд без понимания, что это за файл. Это может привести к потере важных данных!

Команды для управления правами на файлы и директории

Все, что нужно для разрешения проблем, связанных с правами в Linux.

  • sudo — выдает права суперпользователя. Используется перед любой другой командой в терминале, если нужно выполнить ее от имени администратора. Многие программы и операции запускаются исключительно при наличии этих прав, так что sudo используется часто. Например, чтобы обновить список пакетов в Ubuntu, введем: sudo apt-get update. При этом система запросит пароль администратора.
  • sudo su — переводит терминал в режим суперпользователя. В нем каждая введенная команда будет восприниматься системой так, будто перед ней ввели sudo. Помогает запускать несколько скриптов и утилит, требующих права администратора, без необходимости постоянно корректировать их или вводить пароль от учетной записи.
  • sudo gksudo — используется для запуска графических утилит от имени администратора. В Windows для этого есть специальная кнопка в контекстном меню, а в Linux — префикс. Синтаксис такой:

​sudo gksudo название приложения, нуждающееся в запуске от имени администратора

  • sudo !! — запускает предыдущую команду от имени администратора. Используется, если до этого была неудачная попытка запустить программу. Помогает не тратить время на повторный ввод большого количества символов.
  • chmod — корректирует права доступа к выбранному файлу. Применяется исключительно с набором аргументов, обозначающих список прав. Допустим, я хочу выдать права на чтение и запись файла на рабочем столе. Для этого введу в терминал: chmod 777 ~/Desktop/. Теперь его можно открывать и редактировать. Аналогичным образом пользователи поступают с системными файлами, когда приходит время что-то в них менять. По умолчанию большая их часть защищена от записи.
  • chown — назначает владельца для выбранной директории, документа, картинки или любого другого элемента в файловой системе. Синтаксис следующий:
Читайте также:  Операции с файлами и каталогами linux: как выполнять правильно

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

Создание папки и просмотр сведений о её владельце, группе и правах доступа

Создадим папку folder командой mkdir так, как описано в → этой статье. Если действовать по такой же схеме, как и описано выше, то окажется, что этого недостаточно. Будет выдана информация только о размере папки:

[email protected]:~# ls -l folder total 0

Поэтому с папками при просмотре сведении о ней работаем по такой схеме: смотрим информацию не об этой папке, а общую информацию о всей папке. Тогда информация о вложенных в неё файлах и папках выдаётся в полной мере:

[email protected]:~# ls -l total 4 -rw-r—r— 1 root root 0 Apr 10 21:06 file drwxr-xr-x 2 root root 4096 Apr 10 21:18 folder

Как отличить папку от файла в linux

Сразу на этом примере остановлюсь на вопросе о том, как отличить папку от файла в linux. В самом начале строки в символах о правах доступа у файла первым символом идет — тогда, как у папки первый символ это буква d. Именно это отличает папку от файла.

Окружение пользователя

  1. su / sudo

    (Switch User / Substitute User & Do). Две команды для запуска процессов от имени другого пользователя без завершения текущего сеанса. При использовании su по умолчанию происходит переход на пользователя root. Команда sudo способна не только активировать режим суперпользователя (о чём упоминалось выше), но и выполнить команду от имени другого пользователя без реального переключения на него. Поэтому второй вариант считается более безопасным.

  2. date

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

  3. alias

    Команда для создания синонимов названий незаменяемых команд для их сокращения. Она изменяет длинное название на удобное пользователю короткое или аббревиатуру. Пример:

    alias старое_название новое_название

    Этот же приём отлично подойдёт для устранения опечаток в командах. Отменить действие утилиты переименования поможет команда unalias.

  4. uname

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

    uname -a

  5. uptime

    Показывает аптайм – время непрерывной работы системы.

  6. sleep

    Задаёт таймер выключения системы.

  7. yes

    Утилита автозаполнения поля согласия в команде или скрипте. Введите: yes название_команды и вам не придётся делать подтверждение вручную, когда этого потребует сценарий взаимодействия программы с пользователем.