3

私が望むのは、「1234」などの文字列として表される整数を取得し、それを値1234の32ビットビッグエンディアン整数を含むintというファイルに変換することです。

これを行うために私が考え出した唯一の方法は、次のようなものです

echo 1234 | awk '{printf "0: %08X", $1}' | xxd -r > int

これは少し厄介です!

誰かがより良い方法を知っていますか?

4

3 に答える 3

5

少し簡単な方法は次のとおりです。

printf "0: %08X" 1234 | xxd -r > int
于 2009-01-08T01:14:16.687 に答える
3

わかりました、マーク・ウィリアムズがうまくいかなかったようです。彼の回答の修正版を投稿します

echo 1234 | perl -e 'print pack("N", <STDIN>); > int
于 2009-01-12T12:34:49.440 に答える
0

これは私のシステムで同じ出力を生成するように見えます。必ず確認してくださいperldoc -f pack

echo '1234' | perl -e 'print pack("nn", 0,<STDIN>);' > int

于 2009-01-08T01:23:18.773 に答える