シェルスクリプトで「abc」とabcを比較するには?

シェルスクリプトで「abc」とabcを比較するには?

私のコードは、標準のbash文字列「stop」をstopと比較する必要があります。

pi@raspberrypi:~/Voice $ ./test.sh | more
"stop"
stop

私のコード:

#!/bin/bash
command=stop
while :
do
  QUESTION=$(cat stt.txt) #stt,txt has command "stop"
  echo $QUESTION
  echo $command
  if [ "$QUESTION" == "$command" ]; then
    echo "You said "stop"!"
    break
  fi
done

別の "を試してみましたが、command="stop結果は同じです。入力しようとしましたが、command=$('stop')一度だけ動作し、次のように文句を言いました。 ./test.sh: line 2: stop: command not found.

"stop"の代わりにコマンドにstopを設定すると、なぜ突然動作が停止したのかわかりません。

ベストアンサー1

助けてくれてありがとう。私は別のことを試してみました、これは私にとって効果的でした!

#!/bin/bash
command="\"stop\""
while :
do
  QUESTION=$(cat stt.txt) #stt,txt has command "stop"
  echo $QUESTION
  echo $command
  if [ "$QUESTION" = "$command" ]; then
    echo "You said $command"\!
    break
  fi
done

おすすめ記事