Ceci est la sortie courante dans un fichier texte
1 3.491136 C1 00 08 00 DD 92 01 FF
2 3.560963 C1 00 08 00 DD 92 01 FF
3 3.600959 C1 00 08 00 DD 92 01 FF
4 3.640694 01 00
5 3.680950 C1 00 08 00 DD 92 01 FF
6 3.720947 C1 00 08 00 DD 92 01 FF
7 3.760941 C1 00 08 00 DD 92 01 FF
8 3.780677 01 00
9 3.800937 C1 00 08 00 DD 92 01 FF
mais la sortie désirée est (après conversion hexadécimale)
1 3.491136 193 0 8 0 221 146 1 255
2 3.560963 193 0 8 0 221 146 1 255
3 3.600959 193 0 8 0 221 146 1 255
4 3.640694 1 0
5 3.680950 193 0 8 0 221 146 1 255
6 3.720947 193 0 8 0 221 146 1 255
7 3.760941 193 0 8 0 221 146 1 255
8 3.780677 1 0
9 3.800937 193 0 8 0 221 146 1 255
Le problème est le suivant: je peux effectuer la conversion à l'aide de la commande suivante, mais la sortie écrite dans le fichier texte est à nouveau identique (en réalité deux fois!), Mais je m'attends à ce que les données converties soient réécrites dans le fichier.
sed p file_name.txt -i |tr '[a-z]' '[A-z]' |sed 's/ / p /g' |sed 's/$/ p/'|awk '{print "16i "$0}'|dc |tr '\n' ' '