2016-05-07 60 views
0

bashスクリプトまたはコマンドを使用して、16進文字列をLinux上のバイト文字列に変換したいと思います。たとえば、この16進数の文字列、すなわち00124a5bを\ x00 \ x12 \ x4a \ x5bに変換したいと考えています。16進文字列をLinuxのバイト文字列に変換するには

ありがとう。

Plasma33

答えて

3

あなたはsedの機能を置き換える検索を使用することができます。

echo "00124a5b" | sed 's/../\\x&/g' 
\x00\x12\x4a\x5b 

2つのドットは、ストリーム内の任意の2つの文字を検索。 \\x&は一致を\xに置き換え、その後に一致させます。 g on endを追加すると、検索/置換を続けるようにsedに指示します。

このチュートリアルはsed:http://www.grymoire.com/Unix/Sed.html 他の有用なコマンドについては、このサイトでいくつかのチュートリアルがあります。

+0

パーフェクト!これはまさに私が望んでいたものです。ここであなたの入力と簡単な情報のおかげでヒープ。プラズマ33 – plasma33

関連する問題