Команды для работы с файлами через командную строку

Решил зафиксировать, как для себя, так и для других, список 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 по размеру;

Утилиты

Если необходимо найти директории и файлы, которые занимают много места на сервере, то можно воспользоваться ncdu (NCurses Disk Usage) утилитой. Однако она требует установки, что не всегда возможно. Но и значительно упрощает работу по анализу занятого места на диске.

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

 8888888888            8888888888P       888 
888 d88P 888
888 d88P 888
8888888 .d8888b d88P .d88888
888 d88P" d88P d88" 888
888 888 d88P 888 888
888 Y88b. d88P Y88b 888
888 "Y8888P d8888888888 "Y88888


Зарегистрируйтесь для добавления материалов без проверки.