Existe uma razão específica para a qual você usou esse algoritmo específico?
Prefiro construir o binário em variáveis de shell do que em um arquivo. Nesse caso, você pode remover os zeros à esquerda adicionando um zero a um número, como
expr 00001111 + 0
1111
Além disso, se você tiver que usar um arquivo, sugiro usar / tmp em vez de ~ / Documents para armazenar arquivos temporários. E, finalmente, se eu fosse você, preferiria construir o binário usando um método de divisão, que naturalmente termina quando a conversão é concluída, evitando assim o problema de zeros iniciais em vez de resolvê-lo.