Conversão de Decimal para Hexadecimal funcionando no Linux, mas não no Unix

3

Eu quero converter um número decimal em um número hexadecimal. Eu usei o comando:

printf '%X\n' 053698180

Este comando está funcionando perfeitamente no servidor Linux. Mas jogando o erro abaixo quando tentei no UNIX:

printf: Error converting 053698180
053698180

Qual poderia ser o problema aqui?

Além disso, qual é a menor correção possível que pode ser feita aqui para que ela funcione no UNIX e no Linux?

    
por Akshata 09.12.2016 / 15:12

1 resposta

4

Você não nos contou qual é o seu Unix e seu shell. O problema está provavelmente no início 0 que instrui printf a interpretar o número como um número octal, o que não pode ser (devido aos 8 e 9 dígitos).

Basta remover o 0 inicial.

    
por 09.12.2016 / 15:22