![명령 출력을 변수에 저장할 수 없습니다.](https://linux55.com/image/80139/%EB%AA%85%EB%A0%B9%20%EC%B6%9C%EB%A0%A5%EC%9D%84%20%EB%B3%80%EC%88%98%EC%97%90%20%EC%A0%80%EC%9E%A5%ED%95%A0%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
아래 스크립트를 실행하고 있지만 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