Comments 7
Эта статья конечно полезная, но лично для вас. Фишка в том, что паттерны, повторяющеся в вашей работе не факт что будут полезны для других. Например для многих задача вспомнить что он тут делал будет комбинацией команд git status; git show HEAD;
Для привыкания к новым патернам требуется время, а главное не всегда надо их сохранять. Часто можно прям в консоли набить функцию которая нужна вам прям сейчас, но врятли понадобится когда-нибудь ещё.
Например прям сейчас у меня есть функция:
$ type get_console
get_console is a function
get_console ()
{
curl $1 | grep --color=auto -v '| +'
}
Это сиюминутная фишка необходимая мне для того, что я просматриваю кучу логов от Jenkis и они засраны спамом от set +x. Думаю понятно, что без этой функции мне приходилось бы подставлять url, куда-то в средину команды, а так стрелка вверх, ctrl+w, shift-insert. Но нет я не делаю скрипт, не правлю .bashrc, просто набиваю эту функцию прям в командной строке.
Ну и не надо забывать про alias. Класика жанра:
alias ll='ls -alF'
Ну или ваши пять последних файлов (правда не больше 2^15 файлов):
alias ltr5='find . | xargs ls -tr | tail -5'
Косательно вашего репозитория могу сделать вам несколько подсказок, возможно они вам понадобятся.
- Имена ваших хелперов неплохо начинать одинаково. Я например предпочитаю префикс hlp_. В этом случае, даже если подзабыл как называлась функция, то нажав на таб получишь список (если пользоваться zsh, то можно и список с пояснениями вывести)
- Если расширяете известные команды или делаете по ним шорткаты, то проще называть созвучной с оригнальным именем командой. Опять таки классика ls и alias ll.
- Нет никакой необходимости "инсталировать" это дело. Гораздо проще написать один sh файл с функциями и делать source из .bashrc. Это позволятет просто соурсить из вашей рабочей папки с гитом. Ну или в вашем случае можно прописать PATH на эту директорию.
- Надо писать толковый readme. Со временем патерны работы поменяются и разобраться что вы писали год или два назад будет очень сложно. Написать для себя man вообще бесценно.
Я сомневаюсь что Вы сможете вспомнить что устанавливали/конфигурили командой git status.
Алиасы, конечно, полезны. Но мне часто приходится переносить скрипты с сервера на сервер и переносить .bashrc каждому юзеру в home — очень не удобно.
Поэтому мне удобнее иметь все эти скрипты в /usr/bin.
Ну если это тащить на сервер, то надо пакетировать однозначно, хотя можно и в хомяк положить.
По поводу, что они полезны только для меня — я специфичные скрипты не выкладывал. Только общие. Никаких докеров, xen, и тому подобных.
Рассмотрите prettyuser — достаточно удобная штука.
lschanged, showservice — с начала sysmtectl скучал по этой софтине.
Благо вместо netstat — ss с теми же аргументами идёт. Не пришлось оборачивать в удобочитаемую форму.
Хомяк — опять же идёт привязка к конкретному юзеру.
В nakedip
я бы использовал, скажем, grep -oP 'your_favorite_IP_pattern'
— я не эксперт, но наличие в системе grep
несколько более гарантированно, нежели наличие jq
. Скажем, в стандартный base
-пакет ArchLinux jq
не входит.
Ежедневные скрипты