У нас есть 19 ответов на вопрос Как узнать где находится программа Linux? Скорее всего, этого будет достаточно, чтобы вы получили ответ на ваш вопрос.
Содержание
- Как посмотреть путь к программе Linux?
- Как найти путь к файлу Linux?
- Как перейти в папку в линукс?
- Как найти файл Linux?
- Как найти нужный файл Линукс?
- Как узнать где находится программа Linux? Ответы пользователей
- Как узнать где находится программа Linux? Видео-ответы
Отвечает Софья Колпаева
При условии, что файл находится в одной из папок, перечисленных в переменной окружения $PATH . Если это не так, найти его можно командой
Как посмотреть путь к программе Linux?
Как найти путь к команде в Linux Вы можете использовать команду which и whereis, чтобы найти путь к команде в Linux Ubuntu. Используя эти команды, вы можете найти путь к приложению — найти, где установлен пакет Ubuntu Linux.
Как найти путь к файлу Linux?
5 способов поиска файлов в Linux, используя терминал.1) find : Для поиска файлов из командной строки вы можете использовать команду “find”. . 2) locate : Команда “locate” это альтернатива команде “find -name”.
Linux для Начинающих — Навигация по файлам и директориям
Как перейти в папку в линукс?
Каталог, в который вы хотите попасть, выше или ниже текущего? Чтобы сменить каталог, выполните команду cd. Команда в таком виде перенесёт вас в ваш домашний каталог; чтобы перейти в другой каталог необходимо указать путь к нему. Вы можете использовать абсолютные или относительные пути.
Как найти файл Linux?
Примеры использования findПростой поиск по имени: find / -name «file.txt» * в данном примере будет выполнен поиск файла с именем file. . Поиск файла по части имени: find / -name «*.tmp» . Несколько условий. а) Логическое И. . Найти все файлы, кроме .log:25 июл. 2016 г.
Как найти нужный файл Линукс?
Команда find — это одна из наиболее важных и часто используемых утилит системы Linux. Это команда для поиска файлов и каталогов на основе специальных условий. Ее можно использовать в различных обстоятельствах, например, для поиска файлов по разрешениям, владельцам, группам, типу, размеру и другим подобным критериям.
Источник: querybase.ru
Практические примеры использования команды find в Linux
Команда find в Linux являет одной из самых важной и часто используемых утилит командной строки в Unix подобных операционных системах. Команда find используется для поиска и определения расположения файлов и директорий на основе заданных условий. Эти условия задаются в качестве аргументов при запуске find и охватывают все возможные характеристики файла: имя, права доступа, владелец, группа, размер, время доступа/изменения/создания, тип файла, расширение и прочее. Причём эти все эти характеристики можно комбинировать в любых сочетаниях, а вывод команды find может быть настроен очень гибко.
Поиск файлов в Linux и Unix — find, grep, ack, ripgrep
Для первоначального знакомства с командой find рекомендуется статья:
В качестве справочного материала по всем возможностям find рекомендуется:
Если вам просто нужно найти файл по имени, то обратите внимание на команду locate — вполне возможно, её окажется вполне достаточно под ваши нужды:
Что касается данной статьи, которую вы читаете, то здесь собраны практические повседневные примеры, накопленные на базе опыта работы с find.
Команды в этой статье сгруппированы по нескольким разделам — от самых базовых до более продвинутых):
Часть 1: Простые команды find для поиска файлов по именам
Поиск файлов по имени в текущей директории
Найти все файлы, чьё имя zalinux.txt в текущей рабочей директории:
find . -name zalinux.txt ./zalinux.txt
Поиск файлов в домашней директории
Найти все папки в директории /home с именем zalinux.txt:
find /home -name zalinux.txt /home/mial/zalinux.txt
Поиск файлов по имени без учёта регистра
Найти в директории /home все файлы с именем zalinux.txt чьё имя написано как заглавными, так прописными буквами.
find /home -iname zalinux.txt /home/mial/zalinux.txt /home/mial/Zalinux.txt
Найти директории по имени
Найти все директории, чьё имя Zalinux в директории / (корневой директории).
find / -type d -name Zalinux /Zalinux
Поиск PHP файлов по имени
Найти в текущей рабочей директории все файлы php чьё имя zalinux.php.
find . -type f -name zalinux.php ./zalinux.php
Найти все PHP файлы в директории
Найти все php файлы в директории.
find . -type f -name «*.php» ./zalinux.php ./login.php ./index.php
Часть 2: Поиск файлов на основе их прав доступа (разрешений)
Найти все файлы с правами доступа 777
Найти все файлы, чьи права доступа равны 777 (право на чтение, запись и выполнение пользователем, группой и кем угодно.
find . -type f -perm 0777 -print
Найти все файлы без прав доступа 777
Найти все файлы, разрешение на доступ к которым не равен 777.
find / -type f ! -perm 777
Поиск SGID файлов с доступом 644
Найти все файлы с битом SGID чьи права доступа установлены на 644.
find / -perm 2644
Поиск файлов со Sticky Bit с правами доступа 551
Найти все файлы с включённым Sticky Bit права доступа к которым равны 551.
find / -perm 1551
Поиск SUID файлов
Найти все файлы с установленным SUID.
find / -perm /u=s
Найти SGID файлы
Найти все файлы у которых установлен SGID:
find / -perm /g=s
Найти только файлы с разрешением на чтение
Найти все файлы, к которым есть права на чтение:
find / -perm /u=r
Найти только файлы с разрешением на запись
Найти все файлы, к которым есть права на запись:
find / -perm /u=w
Обратите внимание, что в этой и в других командах из данного раздела права на доступ к файлу берутся не относительно текущего пользователя, а относительно владельца. То есть если мы ищем файлы с правами на запись, то имеются ввиду не право текущего пользователя записать в файл, а право владельца записать в файл.
Тем не менее если изменить пользователя, от чьего имени запускается команда, то результаты могут быть совсем другими. К примеру, подсчитаем количество файлов в директории /etc/ на которые есть право записи у владельца, но запустим команду от текущего пользователя и от суперпользователя (с sudo):
# Запуск от имени текущего пользователя find /etc/ -perm /u=w | wc -l 1657 # Запуск от root sudo find /etc/ -perm /u=w | wc -l 1726
Результаты получились различными только из-за того, что у обычного пользователя не хватило прав «заглянуть» в некоторые подпапки и часть файлов не была проверена на соответствие условиям. При использовании sudo были проверены абсолютно все файлы и поэтому результатов получилось больше.
Поиск файлов на которые есть права на запись у кого угодно
Следующая команда ищет файлы с правом на запись у всех. Добавлено уточнение — искать только файлы, это сделано чтобы пропустить символические ссылки:
find /etc/ -type f -perm -a+w
Также обратите внимание, как обозначено право на запись — используется плюс. Это означает, что могут присутствовать и другие права (например, на чтение и выполнение).
Следовать символическим ссылкам и не выводить сообщения об ошибках
При попытке доступа к файлам и папкам на которые недостаточно прав, выводятся сообщения о том, что доступ отклонён. Чтобы этого избежать, используйте после команды конструкцию 2>/dev/null
Если папка для поиска содержит символические ссылки, то по умолчанию команда find не следует им, что команда find переходила по символическим ссылкам, используйте опцию -L
Следующая команда найдёт в папке /tmp все файлы на которые у кого угодно есть права чтения, при встрече символических ссылок она будет переходить по ним, в случае возникновения проблем с доступом, сообщения об ошибках выводиться не будут:
find -L /tmp -type f -perm -a+r 2>/dev/null
Найти исполнимые файлы
Найти все исполнимые файлы.
find / -perm /a=x
Найти все файлы с доступом 777 и изменить их разрешения (chmod) на 644
Найти все файлы с разрешениями равным 777 и использовать команду chmod для установки разрешений на 644:
find / -type f -perm 0777 -print -exec chmod 644 <> ;
Найти директории с разрешением 777 и изменить их разрешения (chmod) на 755
Найти все файлы с разрешениями равным 777 и использовать команду chmod для установки разрешений на 755:
find / -type d -perm 777 -print -exec chmod 755 <> ;
Поиск и удаление единичного файла
Найти единичный файл с именем hackware.txt и удалить его:
find . -type f -name «hackware.txt» -exec rm -f <> ;
Поиск и удаление нескольких файлов
Для поиска нескольких типов файлов, таких как .mp3 или .txt и последующего их удаление используйте:
find . -type f -name «*.txt» -exec rm -f <> ;
find . -type f -name «*.mp3» -exec rm -f <> ;
Поиск всех пустых файлов
Для поиска всех пустых файлов по конкретному пути:
find /tmp -type f -empty
Поиск всех пустых директорий
Найти все пустые директории по указанному пути:
find /tmp -type d -empty
Найти все скрытые файлы
Для поиска всех скрытых файлов используйте следующую команду:
find /tmp -type f -name «.*»
Часть 3: Поиск файлов на основе их владельцев и групп
Найти файл на основе имени пользователя
Найти все или один файл с именем hackware.txt в / (корневой) директории принадлежащие пользователю root:
find / -user root -name hackware.txt
Найти все файлы принадлежащие пользователю
Найти все файлы принадлежащие пользователю mial в директории /home:
find /home -user mial
Найти все файлы принадлежащие группе
Для поиска всех файлов, принадлежащих группе Developer в директории /home:
find /home -group developer
Найти определённые файлы, принадлежащие пользователю
Чтобы найти все файлы .txt пользователя mial в директории /home:
find /home -user mial -iname «*.txt»
Часть 4: Поиск файлов и директорий по времени и дате
Найти файлы, которые были изменены определённое время назад
Чтобы найти все файлы, которые были изменены ровно 50 дней назад:
find / -mtime 50
Найти файлы, к которым был получен доступ определённое время назад
Чтобы найти все файлы, к которым был получен доступ ровно 50 дней назад:
find / -atime 50
Найти файлы, изменённые в заданном диапазоне дней
Чтобы найти все файлы, которые были модифицированы более 50 дней назад и менее 100 дней назад:
find / -mtime +50 -mtime -100
Поиск файлов, чьи свойства недавно менялись
Чтобы найти файлы, свойства которых (права доступа, владелец, группа) были изменены за последний час:
find / -cmin -60
Поиск недавно модифицированных файлов
Чтобы найти файлы, которые были модифицированы за последний час:
find / -mmin -60
Поиск файлов к которым недавно выполнялся доступ
Чтобы найти все файлы, доступ к которым был сделан за последний час:
find / -amin -60
Часть 5: Поиск файлов и директорий на основе размера
Поиск файлов определённого размера
Чтобы найти все файлы размером ровно 50MB используйте:
find / -size 50M
Поиск файлов размера в определённом диапазоне
Чтобы найти все файлы, чем размер более 50MB и менее 100MB:
find / -size +50M -size -100M
Поиск и удаление файлов определённого размера
Чтобы найти все файлы размером ровно 100MB и удалить их, используйте следующую команду:
find / -size +100M -exec rm -rf <> ;
Поиск файлов с определённым расширением и определённым размером и их удаление
Чтобы найти все .mp3 файла размером более чем 10MB и удалить их в одну команду, используйте:
find / -type f -name *.mp3 -size +10M -exec rm <> ;
Часть 6: Поиск нескольких имён файлов (расширений)
Этот раздел посвящён ситуациям, когда нужно одной командой выполнить поиск файлов по нескольким именам или нескольким расширениям.
Предположим что нужно найти все файлы в текущей директории с файловыми расширениями .sh и .txt, это можно сделать следующей командой:
find . -type f ( -name «*.sh» -o -name «*.txt» )
Объяснение предыдущей команды:
- . (точка) означает текущую директорию
- -type используется для указания типа файла, мы ищем обычные файлы, которые здесь обозначаются буквой f
- -name используется для указания шаблона поиска. В данном случае указаны расширения файлов
- -o означает «ИЛИ»
- скобки () используются для установки приоритета логических операций
В результате получается следующее:
- нужно найти файлы И (имя у них «*.sh» ИЛИ имя «*.txt»)
Если бы скобки не использовались, то по правилам приоритета логических операций получилось бы следующее:
- (нужно найти файлы И имя у них «*.sh») ИЛИ имя «*.txt»
Файловые расширения, поскольку они содержат символы с особым значением для оболочки, нужно поместить в кавычки. По этой же причине нужно экранировать скобки с помощью обратного слэша ().
Для поиска по трём файловым расширениям .sh, .txt and .c используется следующая команда:
find . -type f ( -name «*.sh» -o -name «*.txt» -o -name «*.c» )
Как можно понять из приведённых выше команд, добавляя опцию -o («ИЛИ») можно указать любое количество условий. Помните, что логическая операция «ИЛИ» имеет меньший приоритет перед операцией «И». Для операции «И» не требуется специальная опция (хотя она есть), поскольку она подразумевается по умолчанию.
Связанные статьи:
- Перевод мануала find (100%)
- 15 полезных практических примеров команды locate в Linux (77.6%)
- Как пользоваться lsof для просмотра открытых файлов (в Linux всё является файлами) (69.2%)
- Какие есть полезные инструменты с интерфейсом командной строки для системных администраторов Linux (58.4%)
- Команда grep: опции, регулярные выражения и примеры использования (58.4%)
- 10 полезных примеров команды du для определения, сколько места занимают файлы и директории (RANDOM — 50%)
Источник: zalinux.ru
Как использовать команду find в Linux?
Команда find — невероятно мощный инструмент, и его изучение может здорово вас выручить. Данные знания помогут вам эффективно выполнять различные задачи системного администрирования, такие как управление дисковым пространством, рекурсивные файловые операции и резервное копирование.
Команда поиска в Linux ( find ) выполняет поиск файлов и папок на основе заданных вами критериев и позволяет выполнять действия с результатами поиска. Синтаксис команды find такой:
$ find directory-to-search criteria action
- directory-to-search (каталог для поиска) — это отправная точка, с которой find начинает поиск файлов. Поиск включает все подкаталоги этого каталога.
- criteria (критерий или тест ) — сообщает, какие файлы искать
- action (действие) сообщает, что делать с каждым найденным файлом, соответствующим критериям.
Примеры использования команды find
Теперь давайте посмотрим на несколько примеров использования команды find в Linux, которые помогут вам в быстром изучении данной утилиты.
Поиск по названию (-name)
Вот простой пример. Следующая команда ищет файл a.txt в текущем каталоге:
$ find . -name «a.txt» ./a.txt
- . (точка) — означает что файл относится к текущему каталогу
- -name — указывает критерии, которые должны быть сопоставлены. В данном случае название файла
В данном примере критерий -name учитывает регистр и игнорирует файл A.txt . Чтобы гарантировать, что ваш поиск нечувствителен к регистру, используйте -iname :
$ find . -iname «a.txt» ./a.txt ./A.txt
Чтобы найти все .jpg файлы изображений в текущем каталоге, используйте шаблон подстановки *.jpg :
$ find . -name «*.jpg» ./genxfacebook2.jpg ./genxfacebook1.jpg ./Moodle2.jpg ./moodle.jpg ./moodle/moodle1.jpg ./genxfacebook.jpg
Вы можете использовать имя каталога для поиска. Например, чтобы найти все изображения в формате .jpg в каталоге /home:
$ find /home -name «*.jpg» find: `/home/ubuntu/.ssh’: Permission denied /home/vagrant/Moodle2.jpg /home/vagrant/moodle.jpg /home/me/hello.jpg find: `/home/me/testfiles’: Permission denied find: `/home/me/data’: Permission denied /home/me/water.jpg find: `/home/me/.cache’: Permission denied
Если вы видите слишком много ошибок, связанных с отказом в разрешениях (Permission denied), вы можете добавить опцию 2> /dev/null в конце команды. Она перенаправляет сообщения об ошибках на устройство /dev/null и дает более чистый вывод:
find /home -name «*.jpg» 2>/dev/null /home/vagrant/Moodle2.jpg /home/vagrant/moodle.jpg /home/me/hello.jpg /home/me/water.jpg
Поиск по типу файла
С помощью критерия -type вы можете искать файлы по типу. Типы файлов могут быть:
- f — простой файл
- d — директория
- l — символические ссылки
- b — блочные устройства (dev)
- c — символьные устройства (dev)
- p — именованные каналы
- s — сокеты
Например, при использовании -type d будут перечислены только каталоги:
$ find . -type d . ./.ssh ./.cache ./moodle
Поиск по размеру файла
Возможно, вам потребуется найти большие файлы и удалить их. В следующем примере за критерием размера файла следует строка +1G . Это приведет к поиску всех файлов размером более 1 ГБ.
$ find . -size +1G ./Microsoft_Office_16.29.19090802_Installer.pkg ./android-studio-ide-183.5692245-mac.dmg
Знак + означает поиск файлов, размер которых превышает указанное ниже число. Знак минус (-) может использоваться для обозначения меньшего чем. Отсутствие знака означает точное совпадение размера.
Символ | Единица измерения |
с | Байт |
k | Килобайт |
M | Мегабайт |
G | Гигабайт |
Поиск пустых каталогов и файлов
Используйте критерий -empty чтобы найти пустые каталоги и файлы:
Источник: itgap.ru