From b40bcff1526c916ede57915c16d18b90b2862613 Mon Sep 17 00:00:00 2001 From: Stepan Anchugov Date: Thu, 9 Jul 2015 14:43:31 +0500 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=BF=D1=83=D0=BD=D0=BA=D1=82=D1=83=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README-ru.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README-ru.md b/README-ru.md index 3f45d64..01b98d1 100644 --- a/README-ru.md +++ b/README-ru.md @@ -90,7 +90,7 @@ - Используйте `pgrep` или `pkill` для того чтобы находить/слать сигналы к процессам по имени (`-f` помогает). -- Знайте разные сигналы, которые можно слать процессам. Например, чтобы приостановить процесс используйте `kill -STOP [pid]`. Для полного списка посмотрите `man 7 signal`. +- Знайте разные сигналы, которые можно слать процессам. Например, чтобы приостановить процесс, используйте `kill -STOP [pid]`. Для полного списка посмотрите `man 7 signal`. - Используйте `nohup` или `disown` для того, чтобы процесс в фоне выполнялся бесконечно. @@ -156,7 +156,7 @@ ## Процессинг файлов и информации -- Для того, чтобы найти файл в текущей директории сделайте `find . -iname '*something*'`. Для того, чтобы искать файл по всей системе используйте `locate something` (но не забывайте, что `updatedb` мог еще не проиндексировать недавно созданные файлы). +- Для того, чтобы найти файл в текущей директории сделайте `find . -iname '*something*'`. Для того, чтобы искать файл по всей системе, используйте `locate something` (но не забывайте, что `updatedb` мог еще не проиндексировать недавно созданные файлы). - Для основого поиска по содержимому файлов (более сложному, чем `grep -r`) используйте [`ag`](https://github.com/ggreer/the_silver_searcher). @@ -210,9 +210,9 @@ - `strings` (в связке с `grep` или чем-то похожим) помогает найти строки в бинарниках. -- Для того, чтобы посмотреть разницу в бинарниках (дельта кодирование) используйте `xdelta3`. +- Для того, чтобы посмотреть разницу в бинарниках (дельта кодирование), используйте `xdelta3`. -- Для конвертирования кодировок используйте `iconv`. Для более сложных задач – `uconv`, он поддерживает некоторые сложные фичи Юникода. Например эта команда переводит строки из файла в нижний регистр и убирает ударения (кои бывают, например, в Испанском) +- Для конвертирования кодировок используйте `iconv`. Для более сложных задач – `uconv`, он поддерживает некоторые сложные фичи Юникода. Например, эта команда переводит строки из файла в нижний регистр и убирает ударения (кои бывают, например, в испанском): ```sh uconv -f utf-8 -t utf-8 -x '::Any-Lower; ::Any-NFD; [:Nonspacing Mark:] >; ::Any-NFC; ' < input.txt > output.txt @@ -238,9 +238,9 @@ - Для того, чтобы узнать почему диск полностью забит используйте `ncdu`, это сохраняет время по сравнению с тем же `du -sh *`. -- Для того, чтобы узнать какой сокет или процесс использует интернет используйте `iftop` или `nethogs`. +- Для того, чтобы узнать какой сокет или процесс использует интернет, используйте `iftop` или `nethogs`. -- `ab`, которая поставляется вместе в Апачем полезна для быстрой нетщательной проверки производительности веб-сервера. Для более серьезного лоад-тестинга используйте `siege`. +- `ab`, которая поставляется вместе с Апачем, полезна для быстрой нетщательной проверки производительности веб-сервера. Для более серьезного лоад-тестинга используйте `siege`. - Для более серьезного дебаггинга сетей используйте `wireshark`, `tshark`, и `ngrep`. @@ -256,15 +256,15 @@ - Для анализа более глубоких систем и производительности посмотрите на `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](http://en.wikipedia.org/wiki/Perf_(Linux)), и [`sysdig`](https://github.com/draios/sysdig). -- Узнайте какая у вас операционка через `uname` or `uname -a` (основная Unix-информация/информация о ядре) или `lsb_release -a` (информация о дистрибутиве). +- Узнайте, какая у вас операционка через `uname` or `uname -a` (основная Unix-информация/информация о ядре) или `lsb_release -a` (информация о дистрибутиве). -- Используйте `dmesg` когда что-то ведет себя совсем странно (например железо или драйвера). +- Используйте `dmesg`, когда что-то ведет себя совсем странно (например железо или драйвера). ## В одну строчку Давайте соберем все вместе и напишем несколько команд: -- Это довольно круто, что можно найти множественные пересечения файлов, соединить отсортированные файлы и посмотреть разницу в нескольких файлов через `sort`/`uniq`. Это быстрый подход и работает на файлах любого размера (включая многогигабайтные файлы). (Сортировка не ограничена памятью, но возможно вам придется добавить `-T` если `/tmp` находится на небольшом логическом диске). Еще посмотрите то что было сказано выше о `LC_ALL`. Флаг сорта `-u` option не используется ниже чтобы было понятнее: +- Это довольно круто, что можно найти множественные пересечения файлов, соединить отсортированные файлы и посмотреть разницу в нескольких файлов через `sort`/`uniq`. Это быстрый подход, и он работает на файлах любого размера (включая многогигабайтные файлы). (Сортировка не ограничена памятью, но возможно вам придется добавить `-T` если `/tmp` находится на небольшом логическом диске). Еще посмотрите то, что было сказано выше о `LC_ALL`. Флаг сорта `-u` option не используется ниже чтобы было понятнее: ```sh cat a b | sort | uniq > c # c is a union b cat a b | sort | uniq -d > c # c is a intersect b @@ -279,7 +279,7 @@ awk '{ x += $3 } END { print x }' myfile ``` -- Если вам нужно посмотреть размеры и даты создания древа файлов используйте: +- Если вам нужно посмотреть размеры и даты создания древа файлов, используйте: ```sh find . -type f -ls ```