Bash 스크립트에서 가변 개수의 추가 매개변수를 어떻게 설명합니까?

Bash 스크립트에서 가변 개수의 추가 매개변수를 어떻게 설명합니까?

해당 설정은 $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="$*"
    

관련 정보