Puis-je dire xxd
de ne pas imprimer de sauts de ligne dans sa sortie et d'avoir mon vidage sur une seule ligne continue?
[user@localhost] : ~ $ echo -n "this is a long line and xxd is going to take multiple lines to print it" | xxd -p
746869732069732061206c6f6e67206c696e6520616e6420787864206973
20676f696e6720746f2074616b65206d756c7469706c65206c696e657320
746f207072696e74206974
tr
pour supprimer les nouvelles lignes, par exemple... | xxd -p | tr -d \\n
xxd
est qu'il ignore les espaces blancs pour l'inverse-r
de son vidage postcript / plain-p
(ou tout autre hexdump simple d'ailleurs). par exemple. La ligne suivante se termine avec\n
, mais la sortie inversée est exactement celle qui a été entrée:echo {1..14} | xxd -p | xxd -p -r
produit la sortie:1 2 3 4 5 6 7 8 9 10 11 12 13 14\n
- l'\n
est à partir deecho
hexdump -v -e '/1 "%02X"'
place dexxd
.Réponses:
Vous avez besoin de l'option -c.
Voici quelques informations de la documentation :
La documentation indique que la valeur maximale pour le paramètre "c" est 256, mais j'ai essayé de plus grandes valeurs et cela a fonctionné. Vérifiez-le:
Ici, je vide un million d'octets de / dev / random et j'obtiens une chaîne de 2 millions + 1 caractères. Chaque octet de / dev / random est représenté par 2 caractères et l'octet supplémentaire est la nouvelle ligne finale.
la source