夥計們正在編寫一個shell腳本。在這裏我想將十進制數字轉換爲2位十六進制值,例如,如果我給9,它必須爲09。 我做 for i in {0..255}; do hexa=$(echo "obase=16;$i" | bc) done
但第10個vlaues現在如何我應該這樣shell腳本轉換十進制到十六進制
由於轉換提前返回一個數字十六進制值 !!!!
夥計們正在編寫一個shell腳本。在這裏我想將十進制數字轉換爲2位十六進制值,例如,如果我給9,它必須爲09。 我做 for i in {0..255}; do hexa=$(echo "obase=16;$i" | bc) done
但第10個vlaues現在如何我應該這樣shell腳本轉換十進制到十六進制
由於轉換提前返回一個數字十六進制值 !!!!
你可以用printf:
$ printf "%02x\n" 12
0c
見man bash
或您所選擇的外殼的手冊。
for i in {0..255}; do
printf "%X\n" $i
done
echo "enter any number"
read num
i=2
while [ $i -lt $num ]
do
p=`expr $num % $ i`
if [ $p -eq 0 ]
then
echo "$num is not prime number"
echo "since $num is divisible of $i"
exit
fi
i=`expr $i + 1`
echo "$num is prime number"
done
失敗AKHIL的 「如果我給9它必須作爲連鎖行業09」 – sarnold 2011-01-13 06:18:44