基本を学習しようとしていますが、スクリプトでユーザーが入力した文字を計算するのに問題があります。これは私のスクリプトです。誰かが私が間違っている部分を指摘できますか?
#!/bin/bash
echo "Enter a word!"
read INPUT_STRING
len= echo $INPUT_STRING | wc -c
echo "Your character length is " $len
exit
答え1
すべての開始は難しい:
#!/bin/bash
read INPUT
echo $INPUT
len=$(echo -n "$INPUT" | LC_ALL=C.UTF-8 wc -m)
echo $len
具体的には、周囲のスペースを含めないでください。=
内部には別々のコマンドを含める必要があります$(...)
。また"
、この構文を使用して変数を引用符で囲むことで、"${INPUT}"
変数が誤って後続の内容に関連付けられないようにし、特殊文字(改行文字など\n
)を含めることができます。
答え2
使うといいですね。
len=${#INPUT_STRING}
それ以外の場合は、echoによって追加された行末文字も計算されます。それがあなたが望むものではない場合。