diff --git a/README-ru.md b/README-ru.md index 5485082..3f45d64 100644 --- a/README-ru.md +++ b/README-ru.md @@ -182,7 +182,7 @@ - Не забывайте, что ваша локаль влияет на многие команды, включая порядки сортировки, сравнение и производительность. Многие дистрибутивы Linux автоматически выставляют `LANG` или любую другую переменную в подходящую для вашего региона. Из-за этого результаты функций сортировки могут работать непредсказуемо. Рутины `i18n` могут значительно снизить производительность сортировок. В некоторых случаях можно полностью этого избегать (за исключением редких случаев), сортируя традиционно побайтово, для этого `export LC_ALL=C` -- Знайте основы `awk` и `sed` для простых манипуляций с данными. Например, чтобы получить сумму всех чисел, которые находятся в третьей колонки текстового файла можно использовать `awk '{ x += $3 } END { print x }'`. Скорее всего, это раза в 3 быстрее и раза в 3 проще чем делать это в Питоне. +- Знайте основы `awk` и `sed` для простых манипуляций с данными. Например, чтобы получить сумму всех чисел, которые находятся в третьей колонке текстового файла можно использовать `awk '{ x += $3 } END { print x }'`. Скорее всего, это будет раза в 3 быстрее и раза в 3 проще, чем если бы вы сделатли это на Питоне. - Чтобы заменить все нахождения подстроки в одном или нескольких файлах: ```sh @@ -206,9 +206,9 @@ - Стандартные инструменты для патчинга исходников это `diff` и `patch`. Также посмотрите на `diffstat` для просмотра статистики диффа. `diff -r` работает для по всей директории. Используйте `diff -r tree1 tree2 | diffstat` для полной сводки изменений. -- Для бинарников используйте `hd` для простых hex-дампом и `bvi` для двоичного изменения бинарников. +- Для бинарников используйте `hd` для простых hex-дампов и `bvi` для двоичного изменения бинарников. -- `strings` (в связке `grep` или чем-то похожем) помогает найти строки в бинарниках. +- `strings` (в связке с `grep` или чем-то похожим) помогает найти строки в бинарниках. - Для того, чтобы посмотреть разницу в бинарниках (дельта кодирование) используйте `xdelta3`. @@ -252,7 +252,7 @@ - Используйте `/proc`. Иногда он невероятно полезен для дебага запущенных программ. Примеры: `/proc/cpuinfo`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps`. -- Когда дебажете что-то, что сломалось в прошлом используйте `sar` – бывает очень полезно. Показывает историю CPU, памяти, сети и т.д. +- Когда дебажите что-то, что сломалось в прошлом используйте `sar` – бывает очень полезно. Показывает историю CPU, памяти, сети и т.д. - Для анализа более глубоких систем и производительности посмотрите на `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](http://en.wikipedia.org/wiki/Perf_(Linux)), и [`sysdig`](https://github.com/draios/sysdig). @@ -326,7 +326,7 @@ - `cut `, `paste` и `join`: манипуляция данными -- `fmt`: форматировка параграфов в тексте +- `fmt`: форматирование параграфов в тексте - `pr`: отформатировать текст в страницы/колонки @@ -446,13 +446,13 @@ - Системы управлением пакетами – `brew` (Homebrew) и `port` (MacPorts). Они могут быть использованы для того, чтобы установить большинство програм, упомянутых в этом документе. -- Копируйте аутпут консольных программ в десктопные через `pbcopy`, и вставляйте инпут через `pbpaste`. +- Копируйте вывод консольных программ в десктопные через `pbcopy`, и вставляйте инпут через `pbpaste`. - Для того, чтобы открыть файл или десктопную программу типа Finder используйте `open`, вот так `open -a /Applications/Whatever.app`. - Spotlight: Ищите файлы в консоле через `mdfind` и смотрите метадату (например EXIF информацию фотографий) через `mdls`. -- Не забывайте, что MacOS основан на BSD Uni и многие команды (например `ps`, `ls`, `tail`, `awk`, `sed`) имеют некоторые небольшие различия с линуксовыми. Это обусловлено влянием `UNIX System V` и `GNU Tools`. Разницу можно заметить увидив заголовок "BSD General Commands Manual." к манам программ. В некоторых случаях, на Мак можно поставить GNU-версии программ, например `gawk` и `gsed`. Когда пишите кроссплатформенные Bash-скрипты, старайтесь избегать команды, которые могут различаться (например, лучше используйте Python или `perl`), или тщательно все тестируйте. +- Не забывайте, что MacOS основан на BSD Unix, и многие команды (например `ps`, `ls`, `tail`, `awk`, `sed`) имеют некоторые небольшие различия с линуксовыми. Это обусловлено влянием `UNIX System V` и `GNU Tools`. Разницу можно заметить увидив заголовок "BSD General Commands Manual." к манам программ. В некоторых случаях, на Мак можно поставить GNU-версии программ, например `gawk` и `gsed`. Когда пишите кроссплатформенные Bash-скрипты, старайтесь избегать команды, которые могут различаться (например, лучше используйте Python или `perl`), или тщательно все тестируйте. ## Больше информации по теме