Меню сайта
① Главная
② Обо мне
③ Статьи
④ Дневник
⑤ Картинки
⑥ Файлы
⑦ Форум
⑧ Гостевая книга

Категории раздела
Куклы и игрушки [56]
Личное [109]
Музыка [19]
Общее [255]
Японский язык [12]
ZX Spectrum [34]
Субмарины [92]
Настольные игры [34]
Го (碁) [11]
Книги [10]
Япония [26]
Таро [4]
Запертый шкаф [16]
CSA (КША) [14]
GNU/Linux [53]
Ubuntu [103]
Manjaro Linux [24]
Python [1]

Помощь сайту
Если сайт Вам понравился, поддержите на развитие!

Подробнее...


 
Дневник (2018 » Июль » 9 в 03:07)
GNU/Linux find - поиск больших файлов и не только

find
Рекурсивный поиск из текущей папки больших файлов. С конвеерным форматированием вывода через awk. Точка - это место старта поиска - текущая папка,  +600M размер искомых файлов в Мб, начиная с которого они будут находиться. Можно указывать в k — килобайтах.  В awk я указал $10. На самом деле такой колонки нет, но если файлы содержат в имени пробел, часть за пробелом не будет утеряна. Правда если пробелов много, то от использования awk в конвеере вероятно лучше отказаться.

find . -type f -size +600M -exec ls -lh {} \; | awk '{ print $9 " " $10 ": " $5}'
Допустимые величины размера:
  • b – для 512-байтовых блоков (по умолчанию, если префикс не указан)
  • c – байты
  • w – двухбайтовые слова
  • k – килобайты (1024 байт)
  • M – мегабайты (1048576 байт)
  • G – гигабайты (1073741824 байт)
Пути поиска:
  • /  (слеш) корень root
  • ~  (тильда) домашний каталог
  • .  (точка) текущий каталог

Чтобы найти только директории
find . -type d
Чтобы найти только файлы, а не директории
find . -type f
Найти файл по имени в хомяке:
find ~ -name ".bashrc"
Поддерживаются маски. Например найти все файлы, начинающиеся с точки:
find ~ -name ".*"
Для поиска можно указывать сразу несколько мест:
find /opt ~ -name ".*"
Поиск без учета регистра с помощью -iname
find ~ -iname ".bashrc"
Найти все файлы отличные от определенного типа файлов.
find ~ -not -name "*.txt"
Поиск сразу нескольких типов файлов, и .txt и .html, используя Regular Expressions
find . -regex ".*\.\(txt\|html\)$"
Поиск файлов используя условие ИЛИ (OR)
find . -name "*.txt" -o -name ".*"
Найти файлы с определенным доступом используя -perm
find . -type f -perm 0777
Найти  все исполняемые файлы
find . -perm /a=x
Найти файлы с доступом только для чтения
find /root -perm /u=r
Найти все файлы пользователя по его имени
find . -user username
Найти файлы, изменённые 7  дней назад
find . -mtime 7
Найти файлы, в которые входили 8 дней назад
find ~ -atime 8

Поиск всех пустых файлов
find / -type f -empty
Поиск трёх самых БОЛЬШИХ файлов:
find . -type f -exec ls -s {} \; | sort -n -r | head -3
Поиск трёх самых маленьких  файлов:
find . -type f -exec ls -s {} \; | sort -n | head -3

НАЙТИ  И ЗАМЕНИТЬ

Найти все файлыс правами 644 и заменить их на 777
find . -type f -perm 644 -print -exec chmod 777 {} \;
Найти и УДАЛИТЬ файлы, подходящие по определенным критериям:
find . -type f -name '*.back' -exec rm -f {} \;


Источник:
Категория: GNU/Linux | Просмотров: 15 | Добавил: harushima | Рейтинг: 0.0/0 |
Всего комментариев: 0.
В целях защиты от спама, добавлять комментарии могут только зарегистрированные пользователи. Если Вы не хотите регистрироваться под своим именем, войдите под логином: anonymous, паролем: anonymous.   ( Регистрация,   Вход).
Авторизация
Анонимный вход:
anonymous / anonymous
Логин:
Пароль:

Календарь
«  Июль 2018  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
3031

Поиск

Облако тэгов
JGSDF игрушки брюнетки кладбище сайты Ярость Дракулы древний египет девушки кошки cthulhu вампиры Kitsune Ужас Аркхема Инструмент комиксы Lovecraft Готика Submarine submarine rc toy hosting Игротека Ужас Аркхэма book uboat мобильная связь ГО Edgar Poe SWF Mansions of Madness Nightmares персоны linux-hardware Python Мастер-рукожоп

Статистика
Яндекс.Метрика
Онлайн всего: 1
Гостей: 1
Пользователей: 0

Page QR code


Перепечатка материалов сайта без активной ссылки запрещена. Следить за RSS
(c) hermitlair.ucoz.com 2009-2018
Лучший браузер!
Блокировка рекламы