쉘 스크립트의 문자 계산 문제

쉘 스크립트의 문자 계산 문제

기본 사항을 배우려고 하는데 스크립트에서 사용자가 입력한 문자를 계산하는 데 문제가 있습니다. 이것은 내 스크립트입니다. 누군가 내가 잘못 가고 있는 부분을 지적할 수 있습니까?

#!/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에 의해 추가된 줄 끝 문자도 계산됩니다. 그것이 당신이 원하는 것이 아니라면.

관련 정보