Skip to content

Вспомогательные библиотеки для bash скриптинга

Notifications You must be signed in to change notification settings

bash-labs/bash-libs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

Вспомогательные библиотеки для bash скриптинга

Note

Часть модулей и тестов сгенерирована с помощью Claude Code (Anthropic).

Декларативный парсинг "$@"

  • lib/arg.sh
    • arg::parse
    • arg::has
    • arg::get
    • arg::rest

fail-fast подход

  • lib/assert.sh
    • assert::true
    • assert::file
    • assert::dir
    • assert::cmd
    • assert::eq
    • assert::ne

Ускорение повторных вычислений

  • lib/cache.sh
    • cache::get
    • cache::set
    • cache::invalidate
    • cache::ttl

Цветовые константы / функции

  • lib/colors.sh

Системные константы

  • lib/const.sh

Управление окружением и контекстом выполнения

  • lib/env.sh
    • env::require
    • env::default
    • env::export_if_empty
    • env::path_prepend
    • env::path_append

Вспомогательный модуль файловой системы

  • lib/fs.sh
    • fs::exists
    • fs::is_file
    • fs::is_dir
    • fs::abs
    • fs::dirname
    • fs::basename
    • fs::mkdir_p
    • fs::read
    • fs::write
    • fs::append
    • fs::tmpfile
    • fs::size
    • fs::mtime
    • fs::copy
    • fs::move
    • fs::remove
    • fs::ls
    • fs::walk
    • fs::hash

Упрощённый доступ к JSON через jq

  • lib/jsonq.sh
    • jsonq::get
    • jsonq::set

key value parser (deprecated)

  • lib/kv.sh
    • kv::parse
    • kv::build_json

Защита от race condition

  • lib/lock.sh
    • lock::acquire
    • lock::release
    • lock::with

Минималистичнй логгер

  • lib/log.sh
    • log::cfg
    • log::error
    • log::warn
    • log::info
    • log::verbose

Вспомогательный сетевой модуль

  • lib/net.sh
    • net::is_ip
    • net::is_port
    • net::if_exists
    • net::if_up
    • net::if_down
    • net::if_addr
    • net::ping
    • net::port_open
    • net::http_get
    • net::http_post
    • net::tcp_server
    • net::http_server

Корректное управление дочерними процессами

  • lib/proc.sh
    • proc::is_running
    • proc::wait
    • proc::kill_tree
    • proc::on_exit
    • proc::daemonize

Вспомогательный модуль для строк

  • lib/string.sh
    • string::split
    • string::trim
    • string::lower
    • string::upper
    • string::startswith
    • string::endswith
    • string::join
    • string::replace

Унификация доступа к системе

  • lib/sys.sh
    • sys::os
    • sys::arch
    • sys::uptime
    • sys::mem
    • sys::cpu_cores

Измерения без date-магии

  • lib/time.sh
    • time::now
    • time::sleep_ms
    • time::measure

About

Вспомогательные библиотеки для bash скриптинга

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages