Eklemek, çıkarmak, çarpmak ve bölmek için temel bir hesap makinesi yapıyorum.Kabuk betiğinde expr ile çarpma
Ekleme, ancak çarpma değil çalışır.
$ ./calculator 4 + 5
9
$ ./calculator 4 * 5
You did not run the program correctly
Example: calculator 4 + 5
Ben çalışmıyor hala \\*
kod buldum google, etrafında arandı, ancak ettik: Ne çarpın girişiminde zaman, "Doğru programı çalışmadı" yanıtını almak. Birisi bana bir çözüm veya açıklama sağlayabilir mi?
İşte benim kod kabuk sözdiziminde özel karakter olduğu için kaçmış almak için
#!/bin/bash
if [ $# != 3 ]; then
echo You did not run the program correctly
echo Example: calculator 4 + 5
exit 1
fi
if [ $2 = "+" ]; then
ANSWER=`expr $1 + $3`
echo $ANSWER
fi
if [ $2 = "*" ]; then
ANSWER=`expr $1 \\* $3`
echo $ANSWER
fi
exit 0
Bu 'expr'; ANSWER = $ (($ 1 + $ 3)), örneğin, Linux ile kullanmakta olduğunuz herhangi bir kabuk ile çalışmalıdır. – chepner