как узнать где находится файл в линукс

Поиск в Linux с помощью команды find

Утилита find представляет универсальный и функциональный способ для поиска в Linux. Данная статья является шпаргалкой с описанием и примерами ее использования.

Общий синтаксис

путь к корневому каталогу, откуда начинать поиск. Например, find /home/user — искать в соответствующем каталоге. Для текущего каталога нужно использовать точку «.».

набор правил, по которым выполнять поиск.

* по умолчанию, поиск рекурсивный. Для поиска в конкретном каталоге можно использовать опцию maxdepth.

Описание опций

Тип объекта поиска. Возможные варианты:

Также доступны логические операторы:

Полный набор актуальных опций можно получить командой man find.

Примеры использования find

Поиск файла по имени

1. Простой поиск по имени:

* в данном примере будет выполнен поиск файла с именем file.txt по всей файловой системе, начинающейся с корня /.

2. Поиск файла по части имени:

* данной командой будет выполнен поиск всех папок или файлов в корневой директории /, заканчивающихся на .tmp

3. Несколько условий.

а) Логическое И. Например, файлы, которые начинаются на sess_ и заканчиваются на cd:

б) Логическое ИЛИ. Например, файлы, которые начинаются на sess_ или заканчиваются на cd:

в) Более компактный вид имеют регулярные выражения, например:

* где в первом поиске применяется выражение, аналогичное примеру а), а во втором — б).

* в данном примере мы воспользовались логическим оператором !.

Поиск по дате

1. Поиск файлов, которые менялись определенное количество дней назад:

* данная команда найдет файлы, которые менялись более 60 дней назад.

* покажет все файлы, которые менялись, начиная с 02.11.2019 00:00.

* найдет все файлы, которые менялись в промежутке между 31.10.2019 и 01.11.2019 (включительно).

* все файлы, к которым обращались с 08.10.2019.

* все файлы, к которым обращались в октябре.

* все файлы, созданные с 07 сентября 2019 года.

* файлы, созданные с 07.09.2019 00:00:00 по 09.09.2019 07:50

По типу

Искать в текущей директории и всех ее подпапках только файлы:

* f — искать только файлы.

Поиск по правам доступа

1. Ищем все справами на чтение и запись:

2. Находим файлы, доступ к которым имеет только владелец:

Поиск файла по содержимому

* в данном примере выполнен рекурсивный поиск всех файлов в директории / и выведен список тех, в которых содержится строка content.

С сортировкой по дате модификации

* команда найдет все файлы в каталоге /data, добавит к имени дату модификации и отсортирует данные по имени. В итоге получаем, что файлы будут идти в порядке их изменения.

Лимит на количество выводимых результатов

Самый распространенный пример — вывести один файл, который последний раз был модифицирован. Берем пример с сортировкой и добавляем следующее:

Поиск с действием (exec)

1. Найти только файлы, которые начинаются на sess_ и удалить их:

* -print использовать не обязательно, но он покажет все, что будет удаляться, поэтому данную опцию удобно использовать, когда команда выполняется вручную.

2. Переименовать найденные файлы:

3. Вывести на экран количество найденных файлов и папок, которые заканчиваются на .tmp:

* в данном примере мы ищем все каталоги (type d) в директории /home/user и ставим для них права 2700.

5. Передать найденные файлы конвееру (pipe):

* в данном примере мы использовали find для поиска строки test в файлах, которые находятся в каталоге /etc, и название которых заканчивается на .conf. Для этого мы передали список найденных файлов команде grep, которая уже и выполнила поиск по содержимому данных файлов.

6. Произвести замену в файлах с помощью команды sed:

* находим все файлы в каталоге /opt/project и меняем их содержимое с test на production.

Чистка по расписанию

Команду find удобно использовать для автоматического удаления устаревших файлов.

Открываем на редактирование задания cron:

* в данном примере мы удаляем все файлы и папки из каталога /tmp, которые старше 14 дней. Задание запускается каждый день в 00:00.
* полный путь к исполняемому файлу find смотрим командой which find — в разных UNIX системах он может располагаться в разных местах.

Источник

Команда find в Linux – мощный инструмент сисадмина

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

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

Команда find – это невероятно мощный инструмент, позволяющий искать файлы не только по названию, но и по:

Данная команда будет очень полезна системным администраторам для:

Команда find в Linux производит поиск файлов и папок на основе заданных вами критериев и позволяет выполнять действия с результатами поиска.

Синтаксис команды find:

Поиск по имени

Следующая команда ищет файл s.txt в текущем каталоге:

В данном случае критерий -name учитывает только символы нижнего регистра и файл S.txt не появиться в результатах поиска. Чтобы убрать чувствительность к регистру необходимо использовать –iname.

Можно использовать название каталога для поиска. Например, чтобы с помощью команды find найти все png изображения в каталоге home:

Если выдает слишком много ошибок в отказе разрешения, тогда можно добавить в конец команды – 2> /dev/null. Таким образом сообщения об ошибках будут перенаправляться по пути dev/null, что обеспечит более чистую выдачу.

Поиск по типу файла

Критерий -type позволяет искать файлы по типу, которые бывают следующих видов:

Например, указав критерий -type d будут перечислены только каталоги:

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

Допустим, что вам необходимо найти все большие файлы. Для таких ситуаций подойдет критерий -size.

В данном случае поиск выведет все файлы более 1 Гб (+1G).

Единицы измерения файлов:

Поиск пустых файлов и каталогов

Критерий -empty позволяет найти пустые файлы и каталоги.

Поиск времени изменения

Критерий -cmin позволяет искать файлы и каталоги по времени изменения. Для поиска всех файлов, измененных за последний час (менее 60 мин), нужно использовать -60:

Таким образом можно найти все файлы в текущем каталоге, которые были созданы или изменены в течение часа (менее 60 минут).

Для поиска файлов, которые наоборот были изменены в любое время кроме последнего часа необходимо использовать +60.

Поиск по времени доступа

Критерий -atime позволяет искать файлы по времени последнего доступа.

Таким образом можно найти файлы, к которым не обращались последние полгода (180 дней).

Поиск по имени пользователя

Опция –user username дает возможность поиска всех файлов и каталогов, принадлежащих конкретному пользователю:

Таким образом можно найти все файлы пользователя tisha в каталоге home, а 2>/dev/null сделает выдачу чистой без ошибок в отказе доступа.

Поиск по набору разрешений

Критерий -perm – ищет файлы по определенному набору разрешений.

Поиск файлов с разрешениями 777.

Операторы

Для объединения нескольких критериев в одну команду поиска можно применять операторы:

Например, чтобы найти файлы размером более 1 Гбайта пользователя tisha необходимо ввести следующую команду:

Если файлы могут принадлежать не только пользователю tisha, но и пользователю pokeristo, а также быть размером более 1 Гбайта.

Перед скобками нужно поставить обратный слеш «\».

Действия

К команде find можно добавить действия, которые будут произведены с результатами поиска.

-delete

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

Перед удалением лучше лишний раз себя подстраховать. Для этого можно запустить команду с действием по умолчанию -print.

Данное действие является особенным и позволяет выполнить команду по вашему усмотрению в результатах поиска.

С помощью –exec можно написать альтернативу команде –delete и применить ее к результатам поиска:

Другой пример использования действия -exec:

Заключение

Команду find можно использовать для поиска:

С полученными результатами можно сразу выполнять различные действия, такие как:

Команда find может сильно облегчить жизнь системному администратору, а лучший способ овладеть ей – больше практиковаться.

Источник

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

Каждое окружение рабочего стола в Linux имеет свой встроенный инструмент поиска файлов и папок. Но даже если по умолчанию такой инструмент отсутствует, то вы в любой момент можете его установить самостоятельно. Но как обстоят дела с поиском файлов из командной строки? Если вам часто приходится работать в терминале или администрировать Linux-серверы без графического интерфейса, к чему вы обращаетесь, когда вам нужно найти файл или папку? К счастью, в Linux имеются встроенные прямо в систему утилиты, которые помогут отыскать всё, что вам нужно.

Поиск через графический интерфейс

Главное меню

С помощью главного меню ОС вы можете не только искать и запускать программы, но также и выполнять поиск файлов. Подобный функционал присутствует во многих окружениях рабочего стола (KDE, GNOME, Xfce и пр.). Например, в KDE это представлено следующим образом:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

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

Файловые менеджеры

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Поиск по содержимому в Dolphin:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

KFind

В KDE, помимо вышеупомянутых инструментов поиска, также есть замечательная утилита под названием KFind. С её помощью вы можете точно настроить параметры поиска (указать имя файла, его тип и путь поиска, обычный текстовый поиск или мета-поиск, дату изменения, размер, пользователя, группу и пр.). Она также позволяет сохранять результаты поиска в виде простого текстового списка URL-адресов найденных файлов:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

SearchMonkey

SearchMonkey позволяет выполнять поиск файла, как по имени, так и по его содержимому, по диапазону дат и пр. Но главное преимущество SearchMonkey — это возможность везде применять регулярные выражения.

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Поиск с применением регулярного выражения в SearchMonkey:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Recoll

Recoll — это приложение (поисковый движок) для полнотекстового поиска, выполняющее поиск ваших данных по содержимому, а не по внешним атрибутам (например, по имени файла). Вам не нужно запоминать, в каком файле или сообщении электронной почты вы хранили ту или иную информацию. Необходимо лишь указать слова (или выражения), которые должны или не должны присутствовать в искомом тексте, и взамен вы получите список соответствующих документов, упорядоченных таким образом, что первыми идут наиболее релевантные из них (подобно поисковым системам Интернета).

Установить программу можно из официальных репозиториев через командную строку:

sudo apt-get install recoll

Или через графический интерфейс:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Поиск файлов через терминал. Команда find

Команда find — производит поиск файлов и каталогов на основе заданного пользователем выражения и может выполнять назначенные пользователем действия над каждым найденным файлом.

Общий синтаксис команды find выглядит следующим образом:

find [опции] [путь. ] [выражение]

опции — аргументы, управляющие обработкой символьных ссылок, параметрами отладки и методом оптимизации;

путь — начальный каталог (или каталоги), в которых команда find будет искать файлы;

выражение — состоит из параметров, шаблонов поиска и действий, разделенных операторами.

Давайте рассмотрим следующий пример:

путь /var/www — задает каталог, в котором будет выполняться поиск;

Поиск файлов по имени

Например, для поиска файла document.pdf в каталоге /home/linuxize можно применить следующую команду:

Критериям поиска вышеприведенной команды будут соответствовать как Document.pdf, так и DOCUMENT.pdf и т.д.

Поиск файлов по расширению

Поиск файлов по расширению аналогичен поиску файлов по имени. Например, чтобы найти внутри каталога /var/log/nginx все файлы, заканчивающиеся на .log.gz, необходимо выполнить:

Поиск файлов по типу

Иногда вам может потребоваться выполнить поиск файлов определенного типа: обычные файлы, каталоги или символические ссылки. В Linux, как вы помните, всё является файлом.

l — символьная ссылка;

c — символьные устройства;

b — блочные устройства;

p — именованный канал (FIFO);

Например, чтобы найти все папки в текущем рабочем каталоге, используйте:

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

b — 512-байтовые блоки (по умолчанию);

w — двухбайтовые слова;

Следующая команда найдет все файлы размером 1024 байта в каталоге /tmp:

Команда find также позволяет искать файлы, размер которых больше или меньше заданного.

Если вы хотите выполнить поиск файлов размером более 1 МБ, то вам нужно использовать символ плюса + :

Вы даже можете искать файлы в пределах диапазона размеров. Следующая команда найдет все файлы размером от 1 до 2 МБ:

Поиск файлов по дате изменения

Команда find также может выполнять поиск файлов на основе даты их последнего изменения или времени доступа к ним.

Допустим, несколько дней назад вы изменили один из конфигурационных файлов dovecot, но забыли, какой именно. Вы можете легко отфильтровать все файлы в каталоге /etc/dovecot/conf.d, которые заканчивается на .conf и были изменены за последние пять дней:

Поиск файлов по правам доступа

Например, чтобы найти внутри каталога /var/www/ravesli все файлы с разрешением 644, вы должны использовать:

Рассмотрим следующий пример команды:

Данная команда найдет все файлы с разрешениями на чтение для пользователя, группы или других пользователей.

Поиск файлов по владельцу

Например, для поиска всех файлов и каталогов, принадлежащих пользователю ravesli, вы должны выполнить команду:

Вот еще один пример. Допустим, вы хотите найти все файлы, принадлежащие пользователю www-data, и изменить владельца соответствующих файлов с www-data на nginx. Вам нужно выполнить следующий набор команд:

Поиск и удаление файлов

Например, чтобы удалить из каталога /var/log/ все файлы, заканчивающиеся на .temp, применяется следующий набор команд:

Запись результатов поиска в файл

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

Она производит поиск в каталоге /etc всех файлов, имеющих расширение .conf, и записывает результат в файл conf_search.

Поиск файлов через терминал. Команда locate

Стоит заметить, что если файл появился в системе уже после создания базы, то он не будет найден.

Поиск файлов через терминал. Команда grep

С помощью команды grep довольно легко проводить поиск нужной конфигурации или же проверять, не содержат ли файлы с кодом чего-нибудь подозрительного.

Поиск файлов через терминал. Команда whereis

Заключение

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

Поделиться в социальных сетях:

26 команд в Linux, которые должен знать каждый сисадмин

Комментариев: 2

Стоит добавить, что для обновления базы файлов, по которой осуществляется поиск с командой “locate”, есть команда “updatedb”.
А пакет, например, для Ubuntu или CentOS, в котором есть locate и updatedb — mlocate

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

Источник

Основные linux-команды для новичка

Linux — это операционная система. Как винда (windows), только более защищенная. В винде легко подхватить вирус, в линуксе это практически невозможно. А еще линукс бесплатный, и ты сам себе хозяин: никаких тебе неотключаемых автообновлений системы!

Правда, разобраться в нем немного посложнее… Потому что большинство операций выполняется в командной строке. И если вы видите в вакансии «знание linux» — от вас ожидают как раз умение выполнять простейшие операции — перейти в другую директорию, скопировать файл, создать папочку… В этой статье я расскажу про типовые операции, которые стоит уметь делать новичку. Ну и плюс пара полезняшек для тестировщиков.

Я дам кратенькое описание основных команд с примерами (примеры я все проверяла на cent os, red hat based системе) + ссылки на статьи, где можно почитать подробнее. Если же хочется копнуть еще глубже, то см раздел «Книги и видео по теме». А еще комментарии к статье, там много полезного написали)

Содержание

Где я? Как понять, где находишься

Очень полезная команда, когда у вас нет ничего, кроме командной строки под рукой. Расшифровывается как Print Working Directory. Запомните ее, пригодится.

Как понять, что находится в папке

Команда ls позволяет просмотреть содержимое каталога:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Хотя лучше использовать команду сразу с флагом «l»:

Такая команда выведет более читабельный список, где можно будет сразу увидеть дату создания файла, его размер, автора и выданные файлу права.

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

У команды есть и другие флаги, но чаще всего вы будете использовать именно «ls – l».

См также:
Команда ls Linux — подробнее о команде и всех ее флагах
Команда ls – просмотр каталога — о команде для новичков (без перечисления всех флагов)

Как перейти в другую директорию

С помощью команды cd:

Путь может быть абсолютным или относительным.

По абсолютному пути

Либо у вас где-то записан путь, «куда идти», либо вы подсмотрели его в графическом интерфейсе (например, в WinSCP).

Вставляем путь в командную строку после «cd»

Ну вот, мы переместились из домашней директории (обозначается как

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

По относительному пути

Относительный путь — относительно вашей текущей директории, где вы сейчас находитесь. Если я уже нахожусь в /home/student, а мне надо в /home/student/log, команда будет такой:

Если мне надо из /home/student/photo в /home/student/photo/city/msk/2017/cat_1, команда будет такой:

Я не пишу /home/student/photo, так как я уже там.

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

В линуксе можно задавать путь относительно домашней папки текущего пользователя. Домашняя директория обозначается

/. Дальше вы уже можете указывать подпапки:

Эта команда будет работать отовсюду. И переместит нас в /home/user/log.

Вот пример, где я вошла под пользователем students. Исходно была в директории /var, а попала в /home/students/log:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

С автодополнением

Если вы начнете набирать название папки и нажмете Tab, система сама его подставит. Если просто нажмете Tab, ничего не вводя, система начнет перебирать возможные варианты:

(cd tab) Может, ты имел в виду папку 1?
(tab) Нет? Может, папку 2?
(tab) Снова нет? Может, папку 3?
(tab) Снова нет? Может, файл 1 (она перебирает имена всех файлов и директорий, которые есть в той, где вы сейчас находитесь)?
(tab) У меня кончились варианты, поехали сначала. Папка 1?

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

cd lon(Tab) → cd long-long-long-long-name-folder — начали вводить название папки и система сама подставила имя (из тех, что есть в директории, где мы находимся).

cd (Tab)(Tab)(Tab) — система перебирает все файлы / папки в текущей директории.

Это очень удобно, когда перемещаешься в командной строке. Не надо вспоминать точное название папки, но можно вспомнить первую букву-две, это сократит количество вариантов.

Подняться наверх

Подняться на уровень выше:

Если нужно поднять на два уровня выше, то

И так до бесконечности =) Можно использовать файл, лежащий на уровне выше или просто сменить директорию.

Как создать директорию

Используйте команду mkdir:

Можно и в другом месте создать папку:

Когда это нужно? Например, если вам надо сделать бекап логов. Создаете папку и сохраняете туда нужные логи. Или если вы читаете инструкцию по установке ПО и видите там «создать папку». Через командную строку это делается именно так.

Как создать файл

Такая команда создаст пустой файл с названием «app.log». А потом уже можно открыть файл в редакторе и редактировать.

Как отредактировать файл

Вот честное слово, лучше делать это через графический интерфейс!

Но если такой возможности нет, чтож… Если использовать программы, которые есть везде, то у вас два варианта:

Для перемещения по файлу используйте кнопки со стрелками. После того, как закончите редактировать файл, нажмите:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

А вот с vim с этим сложнее. В него легко зайти:

Войти вошли, а как выйти то, аааа? Тут начинается легкая паника, потому что ни одна из стандартных комбинаций не срабатывает: Esc, ctrl + x, ctrl + q… Если под рукой есть второй ноутбук или хотя бы телефон / планшет с интернетом, можно прогуглить «как выйти из vim», а если у вас только одно окно с терминалом, которое вы заблокировали редактором?

Делюсь секретом, для выхода надо набрать:

Исходно, когда мы открываем файл через vim, то видим его содержимое, а внизу информацию о файле:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Когда нажимаем двоеточие, оно печатается внизу:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Если не печатается, не паникуем! Тогда попробуйте нажать Esc (вернуться в нормальный режим), потом Enter (подтвердить команду), а потом снова печатайте. Фух, помогло, мы вышли оттуда.

На самом деле сейчас всё не так страшно. Даже если вас заслали работать в банк, где нет доступа в интернет, а вы вошли в vi и не знаете как выйти, всегда можно погулить выход с телефона. Слава мобильному интернету! Ну а если вы знаете логин-пароль от сервера, то можно просто закрыть терминал и открыть его снова.

Если нужно выйти, сохранив изменения, используйте команду

Ну а про возможности редактирования см статьи ниже =)

Как перенести / скопировать файл

Допустим, у нас в директории /opt/app/log находится app.log, который мы хотим сохранить в другом месте. Как перенести лог в нужное место, если нет графического интерфейса, только командная строка?

Скопировать файл

Если мы находимся в директории /opt/app/log:

В данном примере мы использовали относительный путь для «что копировать» — мы уже находимся рядом с логом, поэтому просто берем его. А для «куда копировать» используем абсолютный путь — копируем в /home/olga.

Можно сразу переименовать файл:

В этом случае мы взяли app.log и поместили его в папку /home/olga, переименовав при этом в app_test_2020_03_08.log. А то мало ли, сколько логов у вас в этом папке уже лежит, чтобы различать их, можно давать файлу более говорящее имя.

Если в «куда копировать» файл с таким именем уже есть, система не будет ничего спрашивать, просто перезапишет его. Для примера положим в папку log внутри домашней директории файл «app.log», который там уже есть:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Никаких ошибок, система просто выполнила команду.

Скопировать директорию

Команда остается та же, «cp», только используется ключ R — «копировать папку рекурсивно»:

Так в директории /home/olga появится папка «log».

Переместить файл

Если надо переместить файл, а не скопировать его, то вместо cp (copy) используем mv (move).

Можно использовать относительные и абсолютные пути:

Можно сразу переименовать файл:

Переместить директорию

Аналогично перемещению файла, команда mv

Как удалить файл

С помощью команды rm (remove):

Если нужно удалить все файлы в текущей директории (скажем, вычищаем старые логи перед переустановкой приложения), используйте «*»:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Если нужно удалить папку, надо добавить флаг -r (recursive):

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

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

А теперь представьте, что вы чистите много файлов. И на каждый система переспрашивает, и надо постоянно отвечать «да, да, да. » (y – enter, y – enter, y – enter)… Чтобы удалить все без вопросов, используйте флаг -f (force):

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Но учтите, что это довольно опасная команда! Вот так надоест подстверждать удаление и введешь «-rf», а директорию неправильно укажешь… Ну и все, прости-прощай нужные файлы. Аккуратнее с этой командой, особенно если у вас есть root-полномочия!

Опция -v показывает имена удаляемых файлов:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Тут вы хотя бы можете осознать, что натворили )))

Как изменить владельца файла

Если у вас есть root-доступ, то вы наверняка будете выполнять все действия под ним. Ну или многие… И тогда любой созданный файл, любая папка будут принадлежать root-пользователю.

Это плохо, потому что никто другой с ними работать уже не сможет. Но можно создать файл под root-ом, а потом изменить его владельца с помощью команды chown.

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Допустим, что я поднимаю сервис testbase. И он должен иметь доступ к директории user и файлу test.txt в другой директории. Так как никому другому эти файлики не нужны, а создала я их под рутом, то просто меняю владельца:

В итоге был владелец root, а стал testbase. То, что надо!

Как установить приложение

Если вы привыкли к винде, то для вас установка приложения — это скачать некий setup файлик, запустить и до упора тыкать «далее-далее-далее». В линуксе все немного по-другому. Тут приложения ставятся как пакеты. И для каждой системы есть свой менеджер пакетов:

Давайте посмотрим на примере, как это работает. В командной строке очень удобно работать с Midnight Commander (mc) — это как FAR на windows. К сожалению, программа далеко не всегда есть в «чистом» дистрибутиве.

И вот вы подняли виртуалку на centos 7, хотите вызвать Midnight Commander, но облом-с.

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Ничего страшного, установите это приложение через yum:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Он там будет что-то делать, качать, а потом уточнит, согласны ли вы поставить программу с учетом ее размеров. Если да, печатаем «y»:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

И система заканчивает установку.

Вот и все! Никаких тебе унылых «далее-далее-далее», сказал «установи», программа установилась! Теперь, если напечатать «mc» в командной строке, запустится Midnight Commander:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Как запустить приложение

Чтобы запустить скрипт, нужно указать полный путь к нему:

Это важно! Даже если вы находитесь в той папке, где и скрипт, он не будет найден, если просто указать название sh-скрипта. Надо написать так:

Поиск идет только в каталогах, записанных в переменную PATH. Так что если скрипт используется часто, добавляйте путь туда и вызывайте просто по названию:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Если же приложение запускается как сервис, то все еще проще:

Чтобы сервис test запускался автоматически при рестарте системы, используйте команду:

Она добавит службу в автозапуск.

Как понять, где установлено приложение

Вот, например, для интеграции Jenkins и newman в Jenkins надо прописать полный путь к ньюману в параметре PATH. Но как это сделать, если newman ставился автоматически через команду install? И вы уже забыли, какой путь установки он вывел? Или вообще не вы ставили?

Чтобы узнать, куда приложение установилось, используйте whereis (без пробела):

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Как создать архив

Стандартная утилита, которая будет работать даже на «голой» системе — tar. Правда, для ее использования надо запомнить флаги. Для создания архива стандартная комбинация cvzf:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

В данном примере мы упаковали директорию /home/test, внутри которой было две картинки — 502.jpg и 504.jpg.

Для распаковки меняем флаг «c» на «x» и убираем «z»:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Хотя система пишет, что распаковала «/home/test», на самом деле папка «test» появляется там, где мы сейчас находимся.

Давайте разберемся, что все эти флаги означают:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Если очень хочется использовать rar, то придется изгаляться. Через yum установка не прокатит:

Говорит, нет такого пакета:

Придется выполнить целую пачку команд! Сначала скачиваем, разархивируем и компилируем:

Как посмотреть использованные ранее команды

Вот, допустим, вы выполняли какие-то сложные действия. Или даже не вы, а разработчик или админ! У вас что-то сломалось, пришел коллега, вжух-вжух ручками, magic — работает. А что он делал? Интересно же!

Или, может, вы писали длинную команду, а теперь ее надо повторить. Снова набирать ручками? Неохота! Тем более что есть помощники:

Если надо «отмотать» недалеко, проще через стрелочку пролистать команды. Один раз нажали — система показала последнюю команду. Еще раз нажали — предпоследнюю. И так до 1000 раз (потому что именно столько хранится в истории).

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Большой бонус в том, что линукс хранит историю даже при перезапуске консоли. Это вам не как в винде — скопировал текст, скопировал другой, а первый уже потерялся. А при перезагрузке системы вообще все потерялось.

Если тыкать в стрелочку не хочется, или команды была давно, можно напечатать «history» и внимательно изучить команды.

См также:
История команд Linux — больше о возможностях history

Как посмотреть свободное место

Сколько места свободно на дисках

Сколько весит директория

Как узнать IP компьютера

Если у вас настроены DNS-имена, вы подключаетесь к linux-машине именно по ним. Ведь так проще запомнить — это testbase, это bugred… Но иногда нужен именно IP. Например, если подключение по DNS работает только внутри рабочей сети, а коллега хочет подключиться из дома, вот и уточняет айпишник.

Чтобы узнать IP машины, используйте команду:

Также можно использовать ifconfig:

Как узнать версию OS

Сидите вы у Заказчика на линуксовой машине. Пытаетесь что-то установить — не работает. Лезете гуглить, а способы установки разные для разных операционных систем. Но как понять, какая установлена на данной машине?

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

На этой виртуалке стоит CentOs 7.

Если нужна версия ядра:

Как узнать, как работает команда

Если вы не знаете, как работает команда, всегда можно спросить о ней саму систему, используя встроенную команду man:

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Закрыть мануал можно с помощью клавиши q. Для того, кто первый раз в линуксовой консоли, это совсем не очевидно, а подсказки есть не везде.

Команда удобна тем, что не надо даже уходить из командной строки, сразу получаешь всю информацию. К тому же это всегда актуальная информация. А что вы там нагуглите — неизвестно =))

Хотя лично мне проще какую-то команду прогуглить, ведь так я получу русское описание + сначала самые главные флаги (а их может быть много). Но я сама новичок в линуксе, это подход новичка. А лучше сразу учиться прокачивать навык поиска по man-у. Он вам очень пригодится для более сложных задач!

Если man у программы нет, используйте флаг -h (—help):

Как создать много тестовых папок и файлов

Допустим, у нас есть некая папка test. Создадим в ней сотню директорий и кучу файликов в каждой:

Вот и все, дальше можно играться с ними!

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

Ага, в домашней директории. Создам себе песочницу:

Вот в ней и буду творить!

А потом можно проверить, что получилось:

Как-то так! Имхо, полезные команды.

Я нашла их в книге «Командная строка Linux. Полное руководство», они используются для того, чтобы создать песочницу для прощупывания команды find. Я, как и автор, восхищаюсь мощью командной строки в данном случае. Всего 2 строчки, а сколько боли бы принесло сделать похожую структуру через графический интерфейс!

И, главное, тестировщику полезно — может пригодиться для тестов.

Как протестировать IOPS на Linux

Это очень полезно делать, если машину вам дает заказчик. Там точно SSD-диски? И они дают хороший iops? Если вы разрабатываете серверное приложение, и от вас требуют выдерживать нагрузку, нужно быть уверенными в том, что диски вам выдали по ТЗ.

Наше приложение активно использует диск. Поэтому, если заказчик хочет видеть хорошие результаты по нагрузке, мы хотим видеть хорошие результаты по производительности самих дисков.

Но верить админам другой стороны на слово нельзя. Если приложение работает медленно, они, разумеется, будут говорить, что у них то все хорошо, это «они» виноваты. Поэтому надо тестировать диски самим.

Я расскажу о том, как мы тестировали диски. Как проверили, сколько IOPS они выдают.

как узнать где находится файл в линукс. Смотреть фото как узнать где находится файл в линукс. Смотреть картинку как узнать где находится файл в линукс. Картинка про как узнать где находится файл в линукс. Фото как узнать где находится файл в линукс

1) Скачиваем последнюю версию, распаковываем, переходим в каталог. В командах ниже нужно заменить «fio-3.19» на актуальную версию из списка

2) Должны стоять пакеты для сборки

Какие должны быть результаты:

Если должно быть 50 тысяч, а диск выдает сильно меньше, то:

— он не SSD;
— есть сетевые задержки;
— неправильно примонтирован;
— с ними что-то еще плохое случилось и стоит поднять алярм.

И это все?

Еще полезно изучить команду find и регулярные выражения. Тестировщику как минимум надо уметь «грепать логи» — использовать grep. Но это уже остается на самостоятельный гуглеж.
База, которая всегда нужна — pwd, cp, mv, mkdir, touch. Остальное можно легко гуглить, как только возникает необходимость.

Вот вам еще пара ссылочек от меня:

Книги и видео по теме

Где тренироваться

Можно поднять виртуалку. Правда, тут сначала придется разбираться, как поднимать виртуалку )))

А можно купить облачную машину. Когда мне надо было поиграться с линуксом, я пошла на SimpleCloud (он мне в гугле одним из первых выпал и у него дружелюбный интерфейс. Но можно выбрать любой аналог) и купила самую дешманскую машину — за 150 руб в месяц. Месяца вам за глаза, чтобы «пощупать-потыркать», и этой машины с минимумом памяти тоже.

У меня был когда-то план самой платить эти 150р за то, чтобы дать машину в общий доступ. Но увы. Как я не пыталась ее огородить (закрывала команды типа ssh, ping и прочая), у меня не получилось. Всегда есть люди, которых хлебом не корми, дай испортить чужое. Выложил в общий доступ пароли? На тебе ддос-атаку с твоего сервера. Ну и сервер блокируют. После N-ой блокировки я плюнула на это дело. Кто хочет научиться, найдет 150р.

Чтобы подключиться к машине, используйте инструменты:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

ОпцияОписание
-nameПоиск по имени.
-inameРегистронезависимый поиск по имени.
-type