2012-02-13 6 views
1

私はac(1)というミラーリングプログラムを書くための作業に取り組んでいます。 acの出力と、私のaacは両方とも:16進コードの相違

"  total  5.80\n" 

diff out1out2を使用しているとき、私は私が得る、しかしaac -file xyz > out1ac -file xyz > out2

を実行しました:

1c1 
<  total  5.80 
--- 
>  total  5.80 

od Iを使用して16進コードの取得します取得:

-bash-3.2$ od out1 
0000000 020040 020040 020040 072040 072157 066141 020040 020040 
0000020 020040 020040 027065 030070 000012 
0000031 
-bash-3.2$ od out2 
0000000 072011 072157 066141 020040 020040 020040 020040 027065 
0000020 030070 000012 
0000023 

違いがどこから来るのかわかりません。

+2

"od"の代わりに "od -x"を実行した場合、自分の生活が楽になります。前者は、8進数ではなく真の16進数(バイト単位)を出力します。しかし、それはちょうど1つのバージョンがちょうどより多くのスペースを左に持っているようです。 – paulsm4

+0

もっと良い出力形式があると思っています。 'od -a'または' od -c'を試してください。私は '' xxd(1) ''出力形式を好んでいます。これは、 "プレーンテキスト"版を16進法と簡単に比較することができます。 (おそらく 'od'は同様のものを出力することができますが、' xxd'は私が気にしているすべてのマシンで利用可能です。) – sarnold

答えて

2

an ASCII tableを参照し、のスペースを使用しているのに対して、011はタブであることに注意してください。