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

Решил зафиксировать, как для себя, так и для других, список 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) утилитой. Однако она требует установки, что не всегда возможно. Но и значительно упрощает работу по анализу занятого места на диске.

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

        d8888   .d8888b.   8888888b.    .d8888b.  
d88888 d88P Y88b 888 "Y88b d88P Y88b
d88P888 888 888 888 888 .d88P
d88P 888 Y88b. d888 888 888 8888"
d88P 888 "Y888P888 888 888 "Y8b.
d88P 888 888 888 888 888 888
d8888888888 Y88b d88P 888 .d88P Y88b d88P
d88P 888 "Y8888P" 8888888P" "Y8888P"


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