Мой сайт
Главная | Каталог статей | Регистрация | Вход
Четверг
25.04.2024
10:50
Приветствую Вас Гость | RSS
Главная » Статьи » Linux и Unix

Linux: примеры поиска файлов часть 6

Поиск самых больших и самых маленьких файлов в директории

Наёдем 5 самых больших по размеру файлов в директории и её поддиректориях. Отметим, что данный процесс может занять некоторое время в зависимости от количества обрабатываемых файлов.

# find . -type f -exec ls -s {} ; | sort -n -r | head -5

Найдём 5 самых маленьких файлов в директории и её поддиректориях. Техника та же самая, единственное отличие в сортировке.

# find . -type f -exec ls -s {} ; | sort -n | head -5

Если в директории и поддиректориях были пустые файлы (zero byte files), то скорее всего они будут в списке 5 самых маленьких файлов. Следующим способом мы найдем 5 самых маленьких файлов, исключая пустые:

# find . -not -empty -type f -exec ls -s {} ; | sort -n | head -5

Также для поиска самых больших и самых маленьких файлов можно использовать команду листинга. 
Найдём 10 самых больших файлов в текущей директории. Чтобы найти наибольший файл в каталоге, используйте команду ls с опцией `-S', которая сортирует файлы в нисходящем порядке по размеру (обычно ls выводит список файлов по алфавиту). Добавьте опцию `-l', чтобы вывести размер и другие атрибуты файла.

$ ls -lS
$ ls -lS | less
$ ls -lS | head +10

Найдём 10 cамых маленьких файлов в текущей директории. Чтобы вывести оглавление каталога, начав с файлов наименьшего размера, используйте ls с ключами `-S' и `-r', которые сортируют вывод в обратном порядке.

$ ls -lSr
$ ls -lSr | less
$ ls -lSr | tail -10

Чтобы вывести список каталогов, отсортированных по размеру  — то есть размеру всех содержащихся в них файлов — используйте du и sort. Команда du выводит список каталогов в восходящем порядке, начиная с самого маленького; опция -S помещает при выводе в первую колонку размер каталога в килобайтах. Укажите требуемое дерево каталогов в качестве аргумента du и перенаправьте вывод в команду sort с ключом -n, которая отсортирует список по числам.

Показывает 50 самых больших файлов/директорий, отсортированных по размеру:

du -xak .|sort -n|tail -50

Вывести список подкаталогов в текущем дереве каталогов, отсортированный по размеру, введите:

$ du -S . sort -n

Если Вам нужно, чтобы первыми были указаны самые большие каталоги, используйте ключ -r:

$ du -S . sort -nr

Поиск файлов по типу (не путать с расширениями файлов в Windows)

Используя опцию –type, найдем только socket файлы.

# find . -type s

А вот так найдем все директории:

# find . -type d

Найдем только обычные файлы (normal)

# find . -type f

Наёдем все скрытые файлы:

# find . -type f -name ".*"

Найдём все скрытые директории:

# find -type d -name ".*"

Поиск файлов с учётом даты модификации другого файла

Команда покажет все файлы, созданные или изменённые после файла ordinary_file.

# ls -lrt
total 0
-rw-r----- 1 root root 0 2009-02-19 20:27 others_can_also_read
----r----- 1 root root 0 2009-02-19 20:27 others_can_only_read
-rw------- 1 root root 0 2009-02-19 20:29 ordinary_file
-rw-r--r-- 1 root root 0 2009-02-19 20:30 everybody_read
-rwxrwxrwx 1 root root 0 2009-02-19 20:31 all_for_all
---------- 1 root root 0 2009-02-19 20:31 no_for_all

# find -newer ordinary_file
.
./everybody_read
./all_for_all
./no_for_all

Чтобы найти файлы, которые новее некоторого файла, введите его имя в качестве аргумента опции-newer. Чтобы вывести все файлы в каталоге /etс, которые новее файла /etc/motd, введите:

$ find /etc -newer /etc/motd

Поиск файлов по размеру

Примечание: минуc значит меньше указанного размера, плюс значит больше указанного размера, отсутствие знака означает равенство указанному размеру файла. Единицы измерения:

  • если после размера ничего не указано, то это блок 512 байт
  • символ k после размера указывает килобайты
  • символ b (или с ????) — байты
  • символ M — Мегабайты.

Используя опцию -size найдём файлы больше заданного размера в домашней директории:

# find ~ -size +100M

или другой вариант указания домашней директории (ищем файлы меньше 500 байт):

# find $HOME -size -500b 

Найдём файлы меньше заданного размера в домашней директории:

# find ~ -size -100M

Найдём файлы, совпадающие по размеру с указанным:

# find ~ -size 100M

Найти файлы во всей системе размером меньше 20 блоков по 512 байт (20*512=10240 байт):

# find / -size 20

Найти файлы больше 1 Гигабайта:

ls -lhR | grep 'G '

Создать сокращенные команды часто используемых алгоритмов поиска

Если вы часто используете определённые параметры поиска и не хотите постоянно вводить их, можно создать для удобства сокращенный ввод (alias, псевдоним) этих операций. 
Создадим команду rmao для удаления файлов с именем a.out:

# alias rmao="find . -iname a.out -exec rm {} ;"
# rmao

Удалить файлы core (ядра), созданные программой с

# alias rmc="find . -iname core -exec rm {} ;"
# rmc


Источник: http://bestann.com.ru/comments/linux_find/
Категория: Linux и Unix | Добавил: SAM (20.07.2010)
Просмотров: 11289 | Комментарии: 33 | Рейтинг: 0.0/0
Всего комментариев: 3
3 Marryepime  
0
Hello everybody! I want to let the cat out of the bag you a teeny with myself, I am actually a moneyed woman, I like to make off a smiling make a fool of and I predilection my vocation, I'm healthy but there is no extension of a companion with whom I could well-founded take sex. You see conditions is the measure and cold hard cash that would maintain to accomplishment I father no time payment dates and meetings that would just talk. I lately want vehement shafting without commitment. Breast weight 3 athletic, pulling, low growth. My photos are here http://sex911.top/Marryepime There is a motor car, and she can bump into b pay up, reasonable compel ought to an apartment where you can come. If you are married, you can be your mistress. If you are interested then opt write or call.

2 Sergeyjub  
0
Немало познавал данные инет, и неожиданно к своему удивлению обнаружил нужный вебсайт. Вот ссылка: http://kinogolos.ru/news/teorija_bolshogo_vzryva_smotret_onlajn/1-0-64 - теория большого взрыва 10 сезон . Для меня вышеуказанный ресурс оказался довольно полезным. Всего наилучшего!

1 anon  
0
Так -size nb или -size nc ?
Вы уж определитесь пожалуйста, перед тем, как писать статьи :)

Имя *:
Email *:
Код *:
Форма входа
Категории раздела
Мои статьи [0]
Linux и Unix [47]
Все про Linux и Unix
Windows [2]
Все про Windows
Администрирование [5]
Все для Системного администратора
Cisco [2]
Мой опыт работы с кисками
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Copyright MyCorp © 2024
    Бесплатный конструктор сайтов - uCoz