0
私はBashスクリプティングではかなり新しく、 'while'ループを実行するのに問題があります。私がkeywords
をエコーすると、言葉の全リストが印刷され、length
をエコーすると、124
が印刷されます。私はwhileループと条件を正しく使っていると信じているので、間違っていることを理解できません。何かご意見は?Bashのループが実行されていない
keywords=$1
length=${#keywords}
echo "$keywords"
echo "$length"
if [ -z "$keywords" ]; then
while [ $length -gt 100 ]; do
echo "$keywords"
echo "$length"
keywords="${keywords%,*}"
length=${#keywords}
done
fi
echo $keywords
'if'文全体は不要です。文字列が空の場合、 '[$ length -gt 100]'は失敗し、ループはスキップされます。 – chepner
私はドキュメントを誤読していて、空の文字列フラグを後方に持っていなければなりません。ありがとうございました! –