그래서 첫 번째 스크립트를 작성하려고 하는데 올바르게 실행되지 않습니다.
스크립트 내부로 들어가고 싶지만 git fetch --prune origin
그 전에 질문하고 싶습니다. "계속"하시겠습니까, 아니면 "종료"하시겠습니까? "종료" 부분은 작동하지만 "계속" 부분은 작동하지 않습니다.
#!/usr/bin/env bash
echo "Ready to git-some and sync your local branches to the remote counterparts ?"
REPLY= read -r -p 'Continue? (type "c" to continue), or Exit? (type "e" to exit): '
if [[ "${REPLY}" == 'c ' ]]
then
echo "About to fetch"
git fetch --prune origin
elif [[ "${REPLY}" == 'e' ]]
then
echo "Stopping the script"
fi
답변1
첫 번째 if 조건에 공백이 있습니다 'c '
.
if [[ "${REPLY}" == 'c ' ]]
조건 검색 또는c[space]
e
그것을 제거.
if [[ "${REPLY}" == 'c' ]]
else
디버깅 조건은 다음과 같습니다 .
if [[ "${REPLY}" == 'c' ]]
then
echo "About to fetch"
git fetch --prune origin
elif [[ "${REPLY}" == 'e' ]]
then
echo "Stopping the script"
else
echo "${REPLY} is INVALID"
fi
이 경우에는 스위치 케이스를 사용하는 것을 선호합니다.
echo "Ready to git-some and sync your local branches to the remote counterparts ?"
read -r -p 'Continue? (type "c" to continue), or Exit? (type "e" to exit): ' REPLY
case $REPLY in
[Cc])
echo "About to fetch"
git fetch --prune origin
;;
[Ee])
echo "Stopping the script"
exit 1;;
*)
echo "Invalid input"
;;
esac