テキストファイルの各行の3番目の単語(16進数文字列)を読み、16進数と比較しているときに問題が発生しています。誰かが私を助けてくれますか?私は以下を使用する場合でも、比較が正しく起こるbashスクリプトでHexを比較する
#!/bin/bash
A=$1
cat $A | while read a; do
a1=$(echo \""$a"\" | awk '{ print $3 }')
#echo $a > cut -d " " -f 3
echo $a1
(("$a1" == 0x10F7))
echo $?
done
、
a1= 0xADCAFE
(("$a1" == 0x10F7))
echo $?
その後、私は以下のように読んだとき、それは
a1=$(echo \""$a"\" | awk '{ print $3 }')
or> a1=$(echo $a | awk '{ print $3 }')
echo $a
プリントが進値を意図し、問題を示している理由は、しかし、比較は起こりません。
よろしく、
私はまだ間違っていることは間違いありません。私たちはスクリプトを単純化することから始めることができます。 'awk '{print $ 3}'" $ A "から始めてみてください。一方、読書a1; 'a1 = ...'行を削除します。また、スクリプトの出力を質問に追加してください。 – Eric