Команды для работы с файлами через командную строку
Решил зафиксировать, как для себя, так и для других, список unix команд и их опций, которые помогают работать с файлами на удаленном веб-сервере. В основном это команды для анализа логов, поиска кусков кода.
Список команд
grep "KEY" path/to/file.log
- – поиск текста в указанном файле; все символы пунктуации, спецсимволы и даже пробелы должны быть экранированы обратным слэшем;
grep -n "KEY" path/to/file.log
- – поиск текста с отображением номера строки;
grep -r "KEY" .
- – рекурсивный поиск текста по всем директориям, начиная с текущей;
grep -A 2 -B 3 "KEY" path/to/file.log
- – поиск текста в файле, однако выводит дополнительно 2 строки выше и 3 ниже искомой;
grep -m 5 "KEY" path/to/file.log
- – поиск текста в файле с выводом только первых 5 строк;
grep -o "KEY" path/to/file.log | wc -l
- – подсчет количества строк с искомым текстом в файле;
zgrep "KEY" path/to/file.tar.gz
- – поиск текста в сжатых файлах/архивах;
cat path/to/file.log
- – вывести в консоль все содержимое файла;
sed -n 5p path/to/file.log
- – отобразить содержимое 5 строки указанного файла (удобно анализировать ошибки PHP, когда указана строка);
sed -n -e 5p -e 8p path/to/file.log
- – отобразить содержимое 5 и 8 строки указанного файла ;
sed -n 5,8p path/to/file.log
- – отобразить содержимое 5-8 строки указанного файла ;
sed -i -e 7d path/to/file.log
- – удалить 7 строку из файла;
sed -i -e 's/search/replace/g' path/to/file.log
- – заменить строку "search" на "replace" во всем файле;
head -n 10 path/to/file.log
- – вывести 10 строк файла с начала;
tail -n 10 path/to/file.log
- – вывести 10 строка файла с конца;
tail -f path/to/file.log
- – динамически наблюдать за обновлением содержимого файла (например, при мониторинге лог файлов);
find path/to/folder -name "*.install"
- – найти файл по маске имени в укзанной директории (работает рекурсивно);
echo "TEXT" >> path/to/file.txt
- – добавить текст в конец файла;
du -hs ./* | sort -hr | head -5
- – disk usage: подсчитать общий размер папок/файлов в текущей директории и отсортировать по убыванию; выводит топ-5 по размеру;
Утилиты
Если необходимо найти директории и файлы, которые занимают много места на сервере, то можно воспользоваться
(NCurses Disk Usage) утилитой. Однако она требует установки, что не всегда возможно. Но и значительно упрощает работу по анализу занятого места на диске.ncdu
Добавлено: 07.06.2020
Метки:
Добавить комментарий