Useful Tools | Linux | GitOps | DevOps
5.82K subscribers
156 photos
1 video
7 files
683 links
Полезные бесплатные opensource инструменты на все случаи жизни, а иногда и советы.

Понравился проект из поста - поддержи автора звездой!

Автор: @dmitry_malinin
Web: https://gitgate.d3.ru

Сотрудничество: @maxgrue
Обсуждение: @gittalk
Download Telegram
ipbash - функции для работы с IP и подсетями на чистом bash

Функции, представленные здесь, могут пригодится для объединения нескольких списков ip-адресов или подсетей, полученных из разных источников, допустим, для бана.

С помощью ENTRYIP, можно убрать подсети, которые перекрывают друг-друга: Например подсеть 192.168.1.0/24 входит в подсеть 192.168.0.0/23. И для бана достаточно будеть оставить только последнюю.

А если в списке есть еще подсеть 192.168.2.0/23, то с помощью функции MERGESUBNETS можно объединить подсети 192.168.0.0/23 192.168.2.0/23 в одну 192.168.0.0/22, уменьшив список и увеличив скорость работы фильтра.

Все функции написаны на чистом bash, без использования сторонних программ, поэтому скорость выполнения не очень большая, но они будут работать, где есть bash.

https://github.com/tagd-tagd/ipbash

опубликовано в @gitgate

В рамках акции "Я пиарюсь". Просьба поддержать звездочкой в репку.

#bash #dev #ip #lib
👍9🔥3
tagdoc - небольшой скрипт для поиска по тегам в текстовом руководстве (TUI/CLI)

Консольный (TUI/CLI) справочник для поиска информации по тегам. Может быть использован сотрудниками в качестве адресной книги, справочника.

Студентами, при изучении новых языков программирования.

Cотрудниками IT, для записи полезных, но редко используемых конструкций, а также в качестве дополнения для man, в котором очень мало примеров использования.

Может использоваться любыми сотрудниками для записи интересных ссылок/статей.

Основным плюсом программы является то, что тэги задаете лично вы, и их всегда можно заменить для улучшения ассоциаций.

В отличие от grep поиск производится только по тэгам, не затрагивая тело статьи(заметки/комментария). Строка тэгов может выделяться цветом. Весь вывод идет в stdout, поэтому дополнительно можно воспользоваться любым фильтром (grepsed)

https://github.com/tagd-tagd/tagdoc

опубликовано в @gitgate

В рамках акции "Я пиарюсь". Просьба поддержать звездочкой в репку.

#bash #dev #tui #cli #tag
🔥9👍4
Christmas-tree - просто поздравление с наступающем Новым Годом написанное на голом bash.

Рекомендую заглянуть в код, там красиво.. А скоро от автора и бесплатный курс по bash начнется. Анонс будет !

https://github.com/tagd-tagd/Christmas-tree

поделился автор: @Tagd_Tagd

опубликовано в @gitgate


#bash #chritmas
🔥23👍12
Совет дня:

Немного полезных CLI команд в bash про повторение аргументов.

!^      first argument
!$ last argument
!* all arguments
!:2 second argument

!:2-3 second to third arguments
!:2-$ second to last arguments
!:2* second to last arguments
!:2- second to next to last arguments

!:0 the command
!! repeat the previous line


публиковано в @gitgate

#tips #bash #cli
👍36🔥12
Совет дня:

Работающий почти везде visual bell для включение в bash скрипты, например для индикации окончания какого то этапа.

printf '\e[?5h'; sleep 0.2 ; printf '\e[?5l'


опубликовано в @gitgate

#tips #bash
👍26🔥8
Совет дня:

Простая арифметика прямо в CLI для bash

echo $((2+2*4))  


публиковано в @gitgate

#tips #bash #cli
🔥15👍10
bunster - скомпилируйте сценарии оболочки bash в статические двоичные файлы.

Вы когда-нибудь хотели, чтобы ваши сценарии оболочки были быстрее, портативнее и безопаснее? Bunster воплощает это в жизнь, преобразуя ваши сценарии оболочки в эффективные автономные двоичные файлы, которые легко распространять и развертывать на разных платформах (на данный момент поддерживается только Unix) .

В отличие от других инструментов, Bunster не просто оборачивает ваши сценарии в двоичный файл - он компилирует их в эффективный машинный код, используя мощную цепочку инструментов Go. Это обеспечивает производительность, портативность и надежность.

Технически говоря, Bunster на самом деле является shell-to-Go транслятором, который генерирует исходный код Go из ваших скриптов. Затем при необходимости используется Go Toolchain для компиляции кода в исполняемую программу.

https://github.com/yassinebenaid/bunster

опубликовано в @gitgate

#bash #go #binary #compiller
👍14🔥12
bashtop - монитор ресурсов, который показывает использование и статистику процессора, памяти, дисков, сети и процессов.

Возможности:
-простота в использовании, система меню, вдохновленная игрой.
- быстрый и отзывчивый пользовательский интерфейс с выбором процесса клавишами ВВЕРХ и ВНИЗ.
- функция отображения подробной статистики выбранного процесса.
- возможность фильтровать процессы.
- легкое переключение между вариантами сортировки.
- отправка SIGTERM, SIGKILL, SIGINT выбранному процессу.
- меню пользовательского интерфейса для изменения всех параметров файла конфигурации.
- график автоматического масштабирования для использования сети.
- показывает сообщение в меню, если доступна новая версия
- показывает текущие скорости чтения и записи дисков.
- несколько методов сбора данных, которые можно переключать при работе в Linux.

https://github.com/aristocratos/bashtop

опубликовано в @gitgate

#bash #cli #tui #top
🔥7👍6
Совет дня:

Показать в bash длину массива

echo $#<array>[@]

или если совсем правильно

echo ${#arrayname[@]}


Пример:

--> ARRAY=("one" "two" "three")
--> echo $ARRAY
one two three
--> echo $#ARRAY[@]
3


опубликовано в @gitgate

#tips #bash
👍28🔥10
Совет дня:

Как в bash удалить повторы из массива

<uniques>=($(echo "${<array>[@]}" | tr ' ' '\\n' | sort -u | tr '\\n' ' '))


Пример:

--> ARRAY=("one" "one" "two" "two" "two" "one" "three")
--> UNIQUES=($(echo "${ARRAY[@]}" | tr ' ' '\\n' | sort -u | tr '\\n' ' '))
--> echo $UNIQUES
one three two

улучшенный вариант от Ивана Гришина - @JohnMcGru

UNIQUES=( $(printf "%s\n" "${ARRAY[@]}" | sort -u ) )
echo "${UNIQUES[@]}"
###one three two

и правильнее, и короче
внутри скобочек VAR=(...) можно оставлять переводы строк

VAR=( it
  is
  OK
)
echo "${VAR[@]}"

опубликовано в @gitgate

#tips #bash
👍19🔥16