Retorna um valor inteiro longo de uma função em ksh

1

Eu uso a função abaixo em ksh para retornar o valor longo das partes da data

function convert_date_to_long {
    long_date="${1}${2}${3}"

    return $long_date;
}

mas o resultado que recebo é 209 quando eu passo os parâmetros 2015 02 25 .

Como obtenho o valor longo 20150225 ?

    
por xGen 19.01.2016 / 13:45

1 resposta

-1

return define o status de saída da função e esse é um número entre 0 e 255 . Se o número for maior que esse, você obtém seu valor mod 256, e 20150225 % 256 é 209 .

Para obter uma string como saída de uma função, a função deve ecoar e, em seguida, você pode capturá-la no chamador com o comando substution.

function convert_date_to_long {
    echo "${1}${2}${3}"
}

some_var=$(convert_date_to_long 2015 02 25)
    
por 20.01.2016 / 21:45

Tags