Bash 스크립트 - 역방향 문자열

Bash 스크립트 - 역방향 문자열

단어(최소 3자, 최대 10자)를 입력으로 사용하고 문자의 위치를 ​​바꾸는 스크립트를 만들려고 합니다.

문제는 스크립트가 제대로 작동하도록 if 문의 작업을 결합하는 방법입니다.

#!/bin/bash
clear
ok=3
echo *****REVERSE*****
while [ $ok = 3 ]
do
echo "Enter a character: " 
read id
   if [ ${#id} -eq 3 ]
   then 
   echo  $id | rev
   elif [ ${#id} -eq 4 ]
   then 
   echo  $id | rev
   elif [ ${#id} -eq 5 ]
   then
   echo  $id | rev
   else
   echo Minimum character is 3 and Maximum is 5!Logging out..
   ok=4
  fi
done

답변1

사다리를 사용할 필요가 없습니다 if..elif..elif. 최대 및 최소 길이를 테스트하면 됩니다.

#!/bin/bash
read -p 'Enter a word :' word
if [[ ${#word} -le 2 ]] || [[ ${#word} -ge 11 ]]; then
   echo "Word is too short or long."
else
   rev < <(echo ${word})
fi

관련 정보