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

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

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

           888                 888888888  
888 888
888 888
888 888 888 .d88b. 8888888b.
`Y8bd8P' 888 d88P"88b "Y88b
X88K 888 888 888 888
.d8""8b. 888 Y88b 888 Y88b d88P
888 888 88888888 "Y88888 "Y8888P"
888
Y8b d88P
"Y88P"
Зарегистрируйтесь для добавления материалов без проверки.