clear
echo "Enter a number"
read n
sd=0
rev=0
while [ $n -gt 0 ]
do
sd=$(( $n % 10 ))
rev=$(( $rev *\ 10 + $sd ))
n=$(( $n / 10 ))
done
echo "Reverse number of entered digit is $rev"
上記のコードでは目的の出力を取得できません。代わりに、このエラーが表示されます。
./Display: line 17: 0 *\ 10 + 4 : syntax error: operand expected (error token is "\ 10 + 4 ")
Reverse number of entered digit is 0
このエラーがなぜ表示されるのかわかりません。解決するのに役立ちます。
答え1
数字もテキストです。テキストは反転できます。回転速度算術はありません。
#!/bin/bash
clear
read -p "Enter a number: " num
echo $num | rev
答え2
エラーは問題を明確に指摘しています。0 *\ 10 + 4
有効な算術式ではありません。
*\
私はこれがタイプミスだと思います*
。このタイプミスを修正すると、スクリプトが機能します。
答え3
*\
有効な表現ではありません。代わりに*
文字の特別な意味を削除してみてください*
。この文字は*
ワイルドカードなのでエラーが発生します。
答え4
*
ワイルドカードです。したがって\
、使用する前に「」を追加してください。