Поиск файлов в Linux

Шпаргалка.
Поиск файлов с помощью команд: http://www.linuxcookbook.ru/articles/poisk-faylov

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

Команда which

Команда which обычно используется для быстрого поиска программ. Она просто выполняет поиск по переменной окружения PATH и возвращает первый найденный результат, а также путь к нему:

$ which wvdial
/usr/bin/wvdial

Из примера видно, что wvdial находится в каталоге /usr/bin. Команда which является достаточно ограниченной, т.к. выполняет поиск только в вашей переменной PATH.

Команда whereis

Команда whereis работает примерно как и which, однако она также ищет страницы руководства и файлы с исходными текстами. Поиск wvdial с помощью whereis должен дать следущее:

$ whereis wvdial
wvdial: /usr/bin/wvdial /etc/wvdial.conf /etc/wvdial.conf-sample /usr/X11R6/bin/wvdial /usr/bin/X11/wvdial /usr/X11/bin/wvdial /usr/man/man1/wvdial.1.gz /usr/share/man/man1/wvdial.1.gz /usr/X11/man/man1/wvdial.1.gz

команда whereis сообщила нам не только, где находится программа, а также и местонахождение документации к ней. Однако и эта команда всё ещё ограничена.

Команда find

Команда find позволяет пользователю выполнять поиск по файловой системе с помощью большого набора поисковых аргументов. Пользователи могут искать файлы по именам с использованием шаблонов подстановки, диапазонов времени их изменения или создания и других расширенных свойств. Например, чтобы найти в системе файл xinitrc, можно воспользоваться следующей командой (/dev/null позволит не выводить на экран многочисленные сообщения “Отказано в доступе” при использовании команды от обычного пользователя):

$ find / .name xinitrc 2> /dev/null
/etc/X11/xinit/xinitrc
/etc/xfce/xdg/xfce4/xinitrc

Команда locate

Команда locate выполняет поиск по всей файловой системе примерно как и find, однако поиск ведётся по базе данных, а не по самой файловой системе. Обновление базы данных выполняется автоматически каждое утро, чтобы у вас был более свежий список файлов своей системы. Можно вручную запустить updatedb для обновления базы данных locate (перед этим необходимо получить права root с помощью su). Вот пример работы locate:

$ su			# Получаем права root
Password:		# Вводим пароль
# updatedb	# Обновляем базу данных
# exit			# Теперь права root не нужны
exit
~$ locate xinitrc
/etc/X11/xinit/xinitrc
/etc/X11/xinit/xinitrc.kde
/etc/X11/xinit/xinitrc.twm
/etc/X11/xinit/xinitrc.fvwm2
/etc/X11/xinit/xinitrc.icewm
/etc/X11/xinit/xinitrc.xfce
/etc/X11/xinit/xinitrc.blackbox
/etc/X11/xinit/xinitrc.wmaker
/etc/X11/xinit/xinitrc.fluxbox
/etc/xfce/xdg/xfce4/xinitrc
/home/ftp/pub/ALTLinux/Master/2.4/ALTLinux/RPMS.main/xinitrc-2.4.22-alt1.i586.rpm

Программа довольно быстро позволила получить больше того, что предполагалось.



Если Вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Об авторе

Толстый
Сервисный инженер. IT-ветеринар. Починяю ноутбуки, мониторы и прочие примусы...

Оставить комментарий

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: