기본 사항을 배우려고 하는데 스크립트에서 사용자가 입력한 문자를 계산하는 데 문제가 있습니다. 이것은 내 스크립트입니다. 누군가 내가 잘못 가고 있는 부분을 지적할 수 있습니까?
#!/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에 의해 추가된 줄 끝 문자도 계산됩니다. 그것이 당신이 원하는 것이 아니라면.