Find: Сборник примеров.

Установка, настройка, эксплуатация.

Модератор: ROOT

Find: Сборник примеров.

Сообщение ROOT » 03 фев 2019, 15:47

Оглавление


Темы
 Некоторые примеры использования утилиты Find 


 Некоторые примеры использования
утилиты Find
 
Если в текущей директории есть скрытые каталоги, то вывод команд будет различаться. Первая будет искать везде, а вторая - проигнорирует скрытые папки на текущем уровне:
Код: выделить все
find .
find *

  1. Поиск по части имени
    Код: выделить все
    find ~/ -name dead*
    или
    find ~/ -name *dead*
  2. Замена слов в скриптах
    Код: выделить все
    find -name '*.php' -exec sed -i -e s/было/стало/g {} \;
  3. Найти и удалить все временные файлы
    Код: выделить все
    find ./ -name '*~' -delete
  4. Сохранить все *.xml вместе с деревом каталогов в архиве.
    Код: выделить все
    find ./dir -name "*.xml" -print | zip archive -@
  5. Установка прав доступа на каталоги
    Код: выделить все
    find -type d -print0 | xargs -0 chmod 750
  6. Установка прав доступа на файлы
    Код: выделить все
    find -type f -print0 | xargs -0 chmod 640
  7. найти и удалить все не рабочие ссылки в указанном каталоге
    Код: выделить все
    find /etc/ -xtype l -delete
  8. Найти файлы, которые не являются видимыми для всех
    Код: выделить все
    find -type f ! -perm -444
  9. Найти директории не доступные для всех
    Код: выделить все
    find -type d ! -perm -111
  10. Искать файлы определённого пользователя
    Код: выделить все
    find . -user apache
  11. Показать файлы которые менялись за последние 10 дней
    Код: выделить все
    find /usr/bin -type f -mtime -10
  12. Найти все файлы, чьё имя состоит лишь из символов
    Код: выделить все
    find * -type f -name '[0-9]*'
  13. Найти все скрытые файлы
    Код: выделить все
    find . -type f -iname ".*"
  14. Удалить все пустые директории
    Код: выделить все
    find -depth -type d -empty -print0 | xargs -0 rmdir
  15. Вывести только файлы из текущего каталога
    Код: выделить все
    find * -maxdepth 0 -type f
  16. Ищем файлы которые изменялись в определённом диапазоне времени
    Код: выделить все
    touch -t yyyymmddHHMM range_start
    touch -t yyyymmddHHMM range_end
    find . -type f -newer range_start ! -newer range_end -ls
  17. Найти символьные ссылки
    Код: выделить все
    find ~/ -type l
    // можно сразу посмотреть куда они ведут:
    find ~/ -type l -exec ls -l {} \;
  18. Найти файлы по определенной маске, содержащие определенный текст. Отображает имя файла, номер строки где найден текст, и саму строку. Все это красиво раскрашивает (если консоль позволяет раскраску)
    Код: выделить все
    $ find . -name "*.php" | while read i; do cat "$i" | grep -H --label="$i" -n "print_r"; done
  19. Найти файлы *.php и проверить их лексическим анализатором
    Код: выделить все
    find . -name "*.php" | while read i; do php -l $i; done
Для желающих отблагодарить
SB: 4274320029755744
QIWI: +79175241450
Аватар пользователя
ROOT
Администратор
 
Сообщений: 135
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный

Вернуться в Fedora

Кто сейчас на форуме

Сейчас этот форум просматривают: Google [Bot] и гости: 1

cron