18.8.16

Bash: ceiling

Terminal:
$ let x=(8+7-1)/7; echo $x
2
$ let x=(16+3-1)/3; echo $x
6


Bash no incluye de manera nativa una función ceiling y aplica la función floor de manera predeterminada. Es posible aprovechar esto y crear un script que recibe dos números, los divide y devuelve el entero más pequeño mayor o igual al resultado.

ceiling.sh:
#!/bin/bash
# Ceiling function for divisions

let a=($1+$2-1)/$2
echo $a


Terminal:
$ ./ceiling.sh 8 7
2
$ ./ceiling.sh 16 3
6


Este script solo funciona con números enteros positivos.

Más: ceiling.sh. Get ceiling integer from number in linux (BASH).