Usando Solaris 10 ipsec a chave deve ser convertida em formato hexadecimal. Então preciso de um comando para converter texto em hexadecimal.
Essa linha funciona bem
echo "mypassword" | od -t x1|head -1|tr -d ' ' |tr [a-z] [A-Z]
Produzir
00000006D7970617373776F72640A
De qualquer forma, usando um conversor online ele retorna isso
6D7970617373776F72640A
Como solução alternativa, eu uso isto
echo "mypassword" | od -t x1|head -1|tr -d ' ' |cut -c 8-1000|tr [a-z] [A-Z]
ele retorna
6D7970617373776F72640A
A questão é... por que retornar esses 00000000?
0000000
é um deslocamento que é inserido no começo de cada nova linha. O deslocamento pode ser alterado usando uma opção, de acordo com a página de manual,-A, --address-radix: output format for file offsets; RADIX is one of [doxn], for Decimal, Octal, Hex or None
.Você gostaria de omitir o deslocamento, então coloque
-An
em seu script.