반응형
bash 스크립트의 다른 명령어로 파라미터를 전송하려면 어떻게 해야 합니까?
bash 스크립트 내에서 제로, 1개 또는2개의 파라미터(스크립트가 인식할 수 있음)를 해석하고 나머지 파라미터를 스크립트에서 호출되는 명령어로 전송합니다.내가 어떻게 그럴 수 있을까?
기본 제공 명령을 사용하여 인수를 "먹습니다".그런 다음 하위 프로세스를 호출하고 인수를 전달하여 나머지 인수를 모두 포함합니다.인용문은 인수목록의 확장을 적절히 인용할 수 있도록 하기 때문에 보관해야 합니다.
Bash는 서브셋 파라미터(서브셋 및 서브스트링 참조)를 지원하므로 다음과 같이 처리/전달할 파라미터를 선택할 수 있습니다.
새 파일 열기 및 편집: vim
r.sh:echo "params only 2 : ${@:2:1}" echo "params 2 and 3 : ${@:2:2}" echo "params all from 2: ${@:2:99}" echo "params all from 2: ${@:2}"실행:
$ chmod u+x r.sh $ ./r.sh 1 2 3 4 5 6 7 8 9 10결과는 다음과 같습니다.
params only 2 : 2 params 2 and 3 : 2 3 params all from 2: 2 3 4 5 6 7 8 9 10 params all from 2: 2 3 4 5 6 7 8 9 10
bash는 shift 명령을 사용합니다.
예: 시프트 테스트sh:
#!/bin/bash
echo $1
shift
echo $1 $2
시프트 테스트sh 1 2 3 생산
1
2 3
언급URL : https://stackoverflow.com/questions/1537673/how-do-i-forward-parameters-to-other-command-in-bash-script
반응형
'programing' 카테고리의 다른 글
| Windows에서 Bash 스크립트를 실행하는 방법이 있습니까? (0) | 2023.04.22 |
|---|---|
| Scala에서의 Seq와 리스트의 차이 (0) | 2023.04.22 |
| EXCEL VBA 항목이 비어 있는지 '스페이스'가 아닌지 확인합니다. (0) | 2023.04.22 |
| 셸 스크립트에서 $@는 무엇을 의미합니까? (0) | 2023.04.22 |
| 문서의 행 수를 세는 방법 (0) | 2023.04.22 |