Hello World
とhello world
を比較したいと思います。結果は同じであるかのように真でなければなりません。私はここで間違って何をやっている大文字小文字を区別しないで比較する
./testScript.txt: line 20: 0à»: hello world==hello world : syntax error in expression (error token is "world==hello world ")
+ echo false
:私はやってる:
while read line; do
newLine="$newLine$line"
done < $1
newp="Hello World"
if ((${newp,,}==${newLine,,})); then
echo "true"
else
echo "false"
fi
は私がからなるテキストファイル渡すとき:
#filename: file.txt
hello world
出力があると思われますか?また、関係のないビットは、file.txt
にある行を文字列(newLine)に渡す方法はありませんか?while
私はやったことがありますか?
'((a == b))'は数学と数を表します。 '[[" $ a "=" $ b "]]'は文字列用です。スペースはオプションではありません。 –
特定の質問に答えても、周囲のループは、どのテストでも 'x \ y'が' xy'にマッチし、他のfalse [mis]マッチを持つことができることを意味します。 [なぜシェルを使ってループを処理するかをテキストで判断する](http://unix.stackexchange.com/questions/169716/whyis-using-a-shell)を参照してください。 -loop-to-process-text-consider-bad-practice)を使用します。 –
他のスタイルをテストするために 'grep -v'を' hello world'の一つのスタイルで使うことができます。 – boardrider