ex horto conclvso

Generating a Belgian OGM with bash

A simple bash script to create a Belgian OGM “gestructureerde mededeling” for my invoices.

#!/bin/bash

input="${1:-$RANDOM}"
clean="${input//[^0-9]/}"

base="${clean}0000000000"
base="${base:0:10}"

remainder=$(( base % 97 ))
(( remainder == 0 )) && remainder=97

printf "+++%s/%s/%s%02d+++\n" \
    "${base:0:3}" \
    "${base:3:4}" \
    "${base:7:3}" \
    "$remainder"

Example

ogm
=> +++327/2100/00067+++

ogm 192.005050
=> +++192/0050/50005+++

ogm 5641
=> +++564/1000/00017+++

Rubriek:
Peri Technōn