해당 설정은 $1
프로그램이 수행할 작업에 대한 플래그로, $2
사용자 이름 또는 기타 항목이 될 수 있습니다. 한 가지를 제외하고는 훌륭하게 작동합니다. 사용자에게 설명을 추가할 수 있어야 하는데, 사용자가 입력해야 하는 단어 수를 모르기 때문에 작업이 엉망이 됩니다. 이 문제를 어떻게 해결할 수 있나요?
답변1
몇 가지 조언:
사용자가 주석을 따옴표로 묶어 매개변수가 되도록 합니다.
command arg1 "a long comment with many spaces" arg3
의견을 마지막에 입력하세요.
사용자가 호출하면
command arg1 arg2 a long comment with many spaces
이전shift
매개변수를 제거하고 다음을$*
사용하여 나머지 매개변수를 모두 캡처할 수 있습니다.arg1="$1" #use a better name arg2="$2" shift shift comment="$*"