bash 스크립트에서 4 가지 옵션 (각각 짧고 긴 버전 포함)을 가져와야합니다. 내가 무엇을 얻을bash 스크립트에서 Getopt 구문 분석 오류 (옵션 선언 실수)
OPTS=`getopt -l :author,icon,channel,message: -o :aicm: -- "[email protected]"` ||
exit 1
eval set -- "$OPTS"
while true; do
case "$1" in
-a|--author) echo "A:'$2'"; shift;;
-i|--icon) echo "I:'$2'"; shift 2;;
-m|--message) echo "M:'$2'"; shift 2;;
-c|--channel) echo "C:'$2'"; shift 2;;
--) shift; break;;
*) echo Error; exit 1;;
esac
done
그리고 여기에 있습니다 : :
명령을 출력
물론C:'--'
Error
, 내가
docker run --rm -e SLACK_TOKEN slacker notify --channel foo
싶습니다
다음 내가 무슨 짓을 이 출력을 얻으려면 :C:'foo'
그래서'slacker' 누구의 코드 작업중인 명령과 위 포함되어 있습니까? 당신의 코드는'getopts'를 사용하는 것과 같이 막연하게 보입니다. 그리고 나서'while' 루프를 사용하여 코드를 다시 구현하십시오. – tripleee
명확히하기 위해, 슬랙커는 제가 제작하고있는 도커 이미지 이름입니다. 여기에는 위 코드를 추출한 notify라는 bash 스크립트가 포함되어있다. 내 문제에 좀 더 집중할 수 있도록 통화 부분을 단순화해야했습니다. – RaDyUm