아래 스크립트를 실행하고 있지만 line 14: last-tag=TSTA-6: command not found
명령 출력을 변수에 저장하려고 하면 " " 오류가 발생합니다(TSTA-6은 명령 출력입니다). 내가 잘못 가고있는 아이디어가 있습니까?
#!/bin/bash
echo "This script will remote trigger tagging job. Kindly provide Inputs"
release=-1
if [ -z "$1" ];then
echo "Enter release number [In 3 digit format i.e. 20.0.0] "
read release
else
release="$1";
fi
last-tag=$(svn ls -v https://abc.com/tags | sort -k1 | tail -1 | tr -s ' ' | cut -d' ' -f7 | cut -d'/' -f1)
echo "release is: $last-tag "
답변1
"last-tag"가 유효한 변수 이름이 아니기 때문에 쉘은 이름이 지정된 명령을 찾고 있으므로 쉘이 에서 대시를 last-tag=TSTA-6
확인하자마자 명령을 찾기 시작합니다. 주석에 표시된 대로 또는 와 같은 유효한 변수 이름으로 변경하십시오 .-
last-tag
last-tag
lasttag
last_tag