Signed-off-by: GnomeZworc <nicolas.boufidjeline@g3e.fr>
This commit is contained in:
GnomeZworc 2025-05-04 15:18:19 +02:00
commit 43199b9f59
Signed by: nicolas.boufideline
GPG key ID: 4406BBBF8845D632

62
lib/db.sh Normal file
View file

@ -0,0 +1,62 @@
#!/bin/bash
FILE_TRASH="/dev/null"
DB_PATH="./data/"
SED_DARWIN="''"
# errors :
# 1 file do not exist
# 2 entry do not exist
#
# ok :
# 0 entry exist
function check_in_db {
db_name="${1}"
search_id="${2}"
[ -f "${DB_PATH}${db_name}.db" ] || return 1
cat "${DB_PATH}${db_name}.db" | \
grep -E "^${search_id}" > "${FILE_TRASH}" || return 2
return 0
}
function add_in_db {
db_name="${1}"
shift 1
local IFS=";"
echo add
echo "$*" >> ${DB_PATH}${db_name}.db
return 0
}
function delete_in_db {
db_name="${1}"
id="${2}"
sed -i ${SED_DARWIN} "/^${id}/d" "${DB_PATH}${db_name}.db"
return 0
}
# errors :
# 0 file do not exist
#
# ok :
# [1-500] entry count
function count_in_db {
db_name="${1}"
id="${2}"
[ -f "${DB_PATH}${db_name}.db" ] || return 0
count=$(cat "${DB_PATH}${db_name}.db" | grep "${id}" | wc -l | sed -e 's/ //g')
return "${count}"
}