Entfernen Sie die Kommas in den printf
Aufrufen:
val1=$(printf "%f" "$debit_amount") val2=$(printf "%f" "$credit_amount")
Es ist nicht notwendig, die Argumente durch Kommas abzugrenzen. Deshalb bc
sah die Eingabe für so aus:
78531178.060004,-3223649.620000,
das bc
kann nicht interpretieren.
BTW : Sie sollten die Backticks ( `
) nicht mehr verwenden :
final="$(echo "$val1 - $val2" | bc)"